您的位置:首页 > 数据库 > Oracle

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

2013-05-20 10:45 387 查看
获取表的主键列名 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));            }

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: