java 获取mysql 某个数据库中所有表及表的列的信息

java 获取mysql 某个数据库中所有表及表的列的信息,第1张

mysql里面提供了很多方法来获取表结构和表列:如下方法

获得某表所有列的信息

String sql = select * from tname//tname为某一表名

Connection conn = ....

Statement st = conn.createStatement()

ResultSet rs = st.rs = st.executeQuery(sql)

ResultSetMetaData rsmd = rs.getMetaData()

int colcount = rsmd.getColumnCount()//取得全部列数

for(int i=0i<colcounti++){

String colname = rsmd.getColumnName(i)//取得全部列名

}

以上为某表字段具体查询,如果是查询表的信息,如在mysql服务器上那样的查询结果的话,可以用一下代码:

ResultSet.executeQuery("show tables")可以的到所有的表信息。

ResultSet.executeQuery("describe tname")可以得到表的字段信息。//tname为表名

MYSQL_ROW row 是mysql内部的类型,可能是一个结构体A,mysql先执行以下desc table的 *** 作,依照表结构创建字段,也可能只是得到一行数据有几列,分别是什么类型。

row = mysql_fetch_row(result)会取一样的数据,mysql里面每成功调用一次这个函数mysql_fetch_row就会取一行,类似

vector<struct A>v_a

··········赋值v_a·········

全局定义 int x = 0

function: mysql_fetch_row

while (x <v_a.size())

row = v_a[x++]

mysql_fetch_lengths是得到一个row里面有多少数据,也就是table里的字段数

后面取的过程就很简单了,某个字段row[i] 为空的时候,不做row[i] ? row[i] : "NULL" 取到的会是个'\0',这个对于程序处理是比较危险的,为空的时候就附值一个标识是比较常用的做法。

fyi

怎么获取mysql数据库里面的字段

可以通过查询系统表来获取。

1、打开Navicat for Mysql,登录到指定数据库下。

2、新建查询。

3、输入以下语句:

1

select column_name from information_schema.COLUMNS where table_name='表名'


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

原文地址: http://outofmemory.cn/sjk/10043700.html

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

发表评论

登录后才能评论

评论列表(0条)

保存