在Java中,如何通过在数据库得到的结果集得到表的列数和行数?

在Java中,如何通过在数据库得到的结果集得到表的列数和行数?,第1张

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

第一种:利用ResultSet的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的总行数

ResultSet rset = stmt.executeQuery("select * from yourTableName")

int rowCount = 0

while(rset.next()) {

rowCount++}rowCount就是ResultSet的总行数。

(1)首先使用last()方法,将数据库游标定位到记录集的最后一行。

(2)使用getRow()方法,返回记录集最后一行的行索引。该索引就等于记录集所包含记录的个数,也就是记录集的行数。getRow()方法是在JDBC API 2.0中才定义的,在JDBC API 1.0中没有这个方法。

可以实现

use information_schema

select table_name,table_rows from tables

where TABLE_SCHEMA = '数据库名'

order by table_rows desc

查询出来的是每张表的行数

--读取库中的所有表名

select name from sysobjects where xtype='u'

--读取指定表的所有列名

select name from syscolumns where id=(select max(id) from sysobjects where xtype='u' and name='表名')

获取数据库表名和字段

sqlserver中各个系统表的作用

sysaltfiles 主数据库 保存数据库的文件

syscharsets 主数据库 字符集与排序顺序

sysconfigures 主数据库 配置选项

syscurconfigs 主数据库 当前配置选项

sysdatabases 主数据库 服务器中的数据库

syslanguages 主数据库 语言

syslogins 主数据库 登陆帐号信息

sysoledbusers 主数据库 链接服务器登陆信息

sysprocesses 主数据库 进程

sysremotelogins主数据库 远程登录帐号

syscolumns 每个数据库 列

sysconstrains 每个数据库 限制

sysfilegroups 每个数据库 文件组

sysfiles 每个数据库 文件

sysforeignkeys 每个数据库 外部关键字

sysindexs 每个数据库 索引

sysmenbers 每个数据库 角色成员

sysobjects 每个数据库 所有数据库对象

syspermissions 每个数据库 权限

systypes 每个数据库 用户定义数据类型

select 列名=name from syscolumns where id=object_id(N'要查的表名')


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/6796482.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-28
下一篇 2023-03-28

发表评论

登录后才能评论

评论列表(0条)

保存