怎么样用java语句判断表已经存在

江湖小虾米东方未明 2012-06-10 10:09:18
最近在写一个程序,需要操作数据库的表之前,先探查是否存在该表否则就建立该表,请问在程序中如何来判断,是用resultset结果集吗?

为更形象的表述,我贴一下代码:
Connection con=DriverManager.getConnection(conURL);
Statement s=con.createStatement();
if(VIP表不存在)
{
String r1="create table "+r2+"(" +
"name varchar(20) not null," +
"sex char(1) not null," +
"telephone varchar(20)," +
"officephone varchar(20)," +
"Email varchar(20)," +
"suoying integer primary key)";
s.executeUpdate(r1);
}
求问怎么写试探该VIP表不存在的
...全文
184 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
五哥 2012-06-10
  • 打赏
  • 举报
回复
java.sql.Connection con = getYourConnection(); 

ResultSet rs = con.getMetaData().getTables(null, null, "yourTable", null );
if (rs.next()) {
//yourTable exist
}else {
//yourTable not exist
}
五哥 2012-06-10
  • 打赏
  • 举报
回复


//name 表名
public boolean HasTable(String name) {
//判断某一个表是否存在
boolean result = false;
try {
DatabaseMetaData meta = sqlConn.getMetaData();//sqlConn 数据库连接
ResultSet set = meta.getTables (null, null, name, null);
while (set.next()) {
result = true;
}
} catch (Exception e) {
System.err.println(e);
e.printStackTrace ();
}
return result;
}

LucEaspe 2012-06-10
  • 打赏
  • 举报
回复
try 
{
Statement stmt = connect.createStatement();
stmt.executeQuery( "select count(*) from yourTable ");

}
catch(SQLException e)
{
System.out.print( "not exits "+ e.getMessage());
}

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧