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

如何通过JDBC取得数据库表结构信息,第1张

用来描述数据的数据就是元数据!

数据库是指用来描述其他表信息的数据表。

例如:

存放在学生表中的数据称为数据----Data。而在我们创建表的时候,指定的表的名字,字段的名字,字段的类型,表的约束信息也是数据,这些数据称为表的元数据----MetaData

经过access测试,ok

String url = "jdbc:odbc:test";//最后一个为数据库名

Statement sm = null;

String command = null;

ResultSet rs = null;

String tableName = null;

String cName = null;

String result = null;

String []pram = new String[1];

List <String> tables = new ArrayList<String>();

pram[0] = "table";

BufferedReader input = new BufferedReader(new InputStreamReader(

Systemin));

try {

try {

ClassforName("sunjdbcodbcJdbcOdbcDriver"); // 加载驱动

} catch (ClassNotFoundException e) {

Systemoutprintln("Can not load Jdbc-Odbc Bridge Driver");

Systemerrprint("ClassNotFoundException:");

Systemerrprintln(egetMessage());

}

Connection con = DriverManagergetConnection(url, "admin", "admin"); // 连接到数据库

DatabaseMetaData dm = congetMetaData();

rs = dmgetTables(null, null, null, pram);//查找所有的表

while(rsnext()){

tablesadd(rsgetString(3));

}

rsclose();

for(String tb : tables){

rs = dmgetColumns(null, null, tb, null);//查找当前表的字段

Systemoutprintln("\nthe table is: " + tb);

ResultSetMetaData rsmd = rsgetMetaData();

int len, type;

len = rsmdgetColumnCount();

// Systemoutprintln(len);

for(int i = 1; i <= len; i ++){

type = rsmdgetColumnType(i);

//这里是获取了一个字段类型的int型,需要转化成string的话要做一个swtich,就不转了,你自己看javasqlTypes这个类去

Systemoutprint("\t" + rsmdgetColumnName(i) + ": " + rsmdgetColumnType(i));

}

}

rsclose();

conclose();

// }

} catch (SQLException ex) {

Systemoutprintln("SQLException:");

while (ex != null) {

Systemoutprintln("Message:" + exgetMessage());

ex = exgetNextException();

}

} catch (Exception e) {

Systemoutprintln("IOException");

}

不可以,metadata 文件夹里面记录了当前工作间的eclipse状态,例如文字大小设计,代码风格等等,删除了以后eclipse会重新初始化。

里面也有很多是关于插件的,存放一些插件的文件,删了会影响软度的使用,且下次还会再生成的,而且会非常慢,eclipse要把安装目录里plugins内的压缩文件(插件)解压,压缩文件形式的插件解压后放到工作目录中的metadata\plugins\才能工作。

扩展资料

MyEclipse企业级工作平台是对EclipseIDE的扩展,利用它可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。

对于每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。

以上就是关于如何通过JDBC取得数据库表结构信息全部的内容,包括:如何通过JDBC取得数据库表结构信息、METADATA(forNEXTtake)是什么意思中文翻译、DatabaseMetaData 返回数据库表名等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/sjk/9405392.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存