resultsetmetadata(2)excuteQuery()方法返回的ResultSet(结果集)的分析,如获得字段个数、各字段名称

resultsetmetadata  时间:2021-06-17  阅读:()

如何通过JDBC取得数据库表结构信息

JDBC中有个ResultSetMetaData类就是用来获取数据表结构信息的。

... ResultSet rs = .... ResultSetMetaData rsmd = rs.getMetaData(); //ResultSetMetaData中有如下方法: getColumnCount(); 返回 ResultSet 中的列数。

getColumnName(int); 返回列序号为 int 的列名。

getColumnLabel(int); 返回此列暗含的标签。

isCurrency(int); 如果此列包含带有货币单位的一个数字,则返回 true。

isReadOnly(int); 如果此列为只读,则返回 true。

isAutoIncrement(int); 如果此列自动递增,则返回 true。

这类列通常为键,而且始终是只读的。

getColumnType(int); 返回此列的 SQL 数据类型。

这些数据类型包括

ResultSet怎么用

在Java中,获得ResultSet的总行数的方法有以下几种。

第一种:利用ResultSet的getRow方法来获得ResultSet的总行数 Java代码 Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE); ResultSet rset = stmt.executeQuery("select * from yourTableName"); rset.last(); int rowCount = rset.getRow(); //获得ResultSet的总行数 Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE); ResultSet rset = stmt.executeQuery("select * from yourTableName"); rset.last(); int rowCount = rset.getRow(); //获得ResultSet的总行数第二种:利用循环ResultSet的元素来获得ResultSet的总行数 Java代码 ResultSet rset = stmt.executeQuery("select * from yourTableName"); int rowCount = 0; while(rset.next()) { rowCount++; } ResultSet rset = stmt.executeQuery("select * from yourTableName"); int rowCount = 0; while(rset.next()) { rowCount++; }rowCount就是ResultSet的总行数。

第三种:利用sql语句中的count函数获得ResultSet的总行数 Java代码 ResultSet rset = stmt.executeQuery("select count(*) totalCount from yourTableName"); int rowCount = 0; if(rset.next()) { rowCount=rset .getInt("totalCount "); } ResultSet rset = stmt.executeQuery("select count(*) totalCount from yourTableName"); int rowCount = 0; if(rset.next()) { rowCount=rset .getInt("totalCount "); }rowCount就是ResultSet的总行数。

? Java中获得ResultSet的总列数是非常简单事情,因为Java中ResultSet提供了ResultSetMetaData工具类,ResultSetMetaData 是ResultSet的元数据的集合说明。

java获得ResultSet总列数的代码如下: Java代码 Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE); ResultSet rset = stmt.executeQuery("select * from yourtable"); ResultSetMetaData rsmd = rset.getMetaData() ; int columnCount = rsmd.getColumnCount(); Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE); ResultSet rset = stmt.executeQuery("select * from yourtable"); ResultSetMetaData rsmd = rset.getMetaData() ; int columnCount = rsmd.getColumnCount();columnCount 就是ResultSet的总列数。

Java JDBC数据库查询表和字段

可以用下面的方式获取,把tableName换成你的表名,有些数据库也可以直接使用Sql查询表列名 ResultSet resultSet = statement.executeQuery("select * from tableName"); ResultSetMetaData resultSetMetaData = resultSet.getMetaData(); for(int i=0; i怎么遍历ResultSet中的数据这个是servlet和java bean 一起写的,我是这么做的, String sql="select * from book"; try{ Connection con = MyConnection.getConnection(); Statement statement = con.createStatement(); ResultSet resultSet = statement.executeQuery(sql); // ResultSetMetaData rsmd = resultSet.getMetaData(); // int count = rsmd.getColumnCount(); while(resultSet.next()){ Book book = new Book(); book.setBookName(resultSet.getString("bookName")); book.setPrice(resultSet.getString("price")); book.setPicUrl(resultSet.getString("picUrl")); list.add(book); } }catch(SQLException e){ e.printStackTrace(); } catch (ClassNotFoundException e) { e.printStackTrace(); } 但是我不是很满意,有些总是弄不懂,是javaWeb的问题

(2)excuteQuery()方法返回的ResultSet(结果集)的分析,如获得字段个数、各字段名称

你看看JDK吗,里面肯定有resultset的所有方法的解释,基本是就是一些 getString(int a)或者getString("field"); getInt()......... 都是一些获取每一行的值。









还有一个类是 resultsetmetadata这个类是用来查看此结果集的基本信息,如一共有多少列 具体的还是要看看文档

柚子互联(34元),湖北十堰高防, 香港 1核1G 5M

柚子互联官网商家介绍柚子互联(www.19vps.cn)本次给大家带来了盛夏促销活动,本次推出的活动是湖北十堰高防产品,这次老板也人狠话不多丢了一个6.5折优惠券而且还是续费同价,稳撸。喜欢的朋友可以看看下面的活动详情介绍,自从站长这么久以来柚子互联从19年开始算是老商家了。六五折优惠码:6kfUGl07活动截止时间:2021年9月30日客服QQ:207781983本次仅推荐部分套餐,更多套餐可进...

无忧云:服务器100G高防云服务器,bgpBGP云,洛阳BGP云服务器2核2G仅38.4元/月起

无忧云怎么样?无忧云值不值得购买?无忧云,无忧云是一家成立于2017年的老牌商家旗下的服务器销售品牌,现由深圳市云上无忧网络科技有限公司运营,是正规持证IDC/ISP/IRCS商家,主要销售国内、中国香港、国外服务器产品,线路有腾讯云国外线路、自营香港CN2线路等,都是中国大陆直连线路,非常适合免备案建站业务需求和各种负载较高的项目,同时国内服务器也有多个BGP以及高防节点。目前,四川雅安机房,4...

萤光云(13.25元)香港CN2 新购首月6.5折

萤光云怎么样?萤光云是一家国人云厂商,总部位于福建福州。其成立于2002年,主打高防云服务器产品,主要提供福州、北京、上海BGP和香港CN2节点。萤光云的高防云服务器自带50G防御,适合高防建站、游戏高防等业务。目前萤光云推出北京云服务器优惠活动,机房为北京BGP机房,购买北京云服务器可享受6.5折优惠+51元代金券(折扣和代金券可叠加使用)。活动期间还支持申请免费试用,需提交工单开通免费试用体验...

resultsetmetadata为你推荐
爱短信官网官方飞信,ET飞信,爱短信飞信插件哪个好用??youtube创始人比特币创始人到底是谁刷ip流量免费刷流量软件有哪些?哪个免费刷流量工具最好?shoujiao黑鲨手机SKW一AO怎么解锁?selectintooracle有select into临时表的用法吗sms是什么什么是SMS协议医院排队系统请问医院采血排队的设备系统是独立的吗?za是哪个国家的IE是哪个国家的缩写gbk内码Gbk内码查询空间导航QQ空间中如何自定义导航?
cn域名备案 godaddy域名解析教程 大硬盘 host1plus 香港加速器 technetcal 便宜服务器 linode代购 nerd godaddy续费优惠码 三拼域名 云全民 web服务器架设 135邮箱 昆明蜗牛家 搜索引擎提交入口 华为云服务登录 彩虹云 下载速度测试 什么是web服务器 更多