码迷,mamicode.com
首页 > 数据库 > 详细

oracle 如何获取表的主键列名,如何获取表的所有列名

时间:2018-01-25 18:18:21      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:image   获取   编程   type   gif   nts   int   img   ken   

获取表的主键列名 SQL

技术分享图片 select   *   from   user_cons_columns   
技术分享图片  where   constraint_name   =   (select   constraint_name   from   user_constraints   
技术分享图片              where   table_name   =   ‘BST_FAVORITE‘  and   constraint_type   =‘P‘);   

记住:表名要大写
执行试试,该表所有主键都查出来了,主键列名就在第四列

获取表的所有列名 SQL

技术分享图片select * from table_name where rownum=1


这条sql语句相信大家都知道什么意思.

用jdbc编程查主键列名,可以通过以上第一条语句来查询.
还有一种方法可以查询表的主键列名,是使用jdbc编程方式,代码如下:

技术分享图片DatabaseMetaData dbmd=  conn.getMetaData();   
技术分享图片rs = dbmd.getPrimaryKeys(null,null,tableName.toUpperCase());    //要将表名转为大写才能正确取出主键来
技术分享图片            
技术分享图片while   (rs.next()) {
技术分享图片columnName=rs.getString(4);
技术分享图片System.out.println(columnName);
技术分享图片}

用jdbc获取表的所有列名,也可以通过以上第二条sql语句来获取,具体代码如下:

技术分享图片String sql="select * from table_name where rownum=1";
技术分享图片stm=conn.createStatement();
技术分享图片            rs=stm.executeQuery(sql);
技术分享图片            rs.next();
技术分享图片            
技术分享图片            ResultSetMetaData metadata=rs.getMetaData();
技术分享图片            for(int i=1;i<=metadata.getColumnCount();i++) {
技术分享图片                System.out.println(metadata.getColumnName(i));            }

oracle 如何获取表的主键列名,如何获取表的所有列名

标签:image   获取   编程   type   gif   nts   int   img   ken   

原文地址:https://www.cnblogs.com/weaver18/p/8352302.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!