java操作mysql主键_在java程序中如何知道数据库表的主键

有同事问到在程序中怎样知道数据库表中那些字段是主键。当时不知道,晚上回来看了看JDK的文档。

在使用JDBC来查询数据库的时候,通常的步骤是:

1.注册驱动程序

2.获取数据库连接

3.执行查询语句

4.关闭连接。

在获得数据库连接后,就可以通过getMetaData()方法来获取DatabaseMetaData;然后通过DatabaseMetaData的getPrimaryKeys ()方法来获取主键的信息。

下面是我做的示例程序,该程序在JBuilder2005+oracle8i下通过:import java.sql.*;

import javax.sql.*;

public class TestJDBC {

public TestJDBC() {

}

public static void main(String[] args) throws SQLException {

Connection con = null;

Statement st = null;

ResultSet rst = null;

try{

//注册数据库驱动程序

Class.forName("oracle.jdbc.driver.OracleDriver");

//获取数据库连接

con = DriverManager.getConnection("jdbc:oracle:thin:@10.60.203.80:1521:TestDB","123","123");

//获取主键信息

rst = con.getMetaData().getPrimaryKeys(null,null,"USER");

//打印主键信息

if (!rst.isAfterLast()) {

rst.next();

System.out.println(rst.getString("TABLE_NAME") + " " +

rst.getString("COLUMN_NAME"));

}

}

catch (Exception e){

System.out.println(e.getLocalizedMessage());

}

finally{

try{

//关闭连接

if (rst != null)

rst.close();

if (con != null)

con.close();

}

catch (SQLException e){

throw e;

}

}

}

}

上面的程序中,在获取主键信息的时候,语句

rst = con.getMetaData().getPrimaryKeys(null,null,"USER");

用来获取主键信息。关于该函数的详细信息,请参阅JDK的文档。这里要说的是,在测试中发现第三个参数(数据库表名)是大小写敏感的,如果写成user

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值