在java程序中,怎样写一段程序实现判断一个表(名)是否存在?
我已经用jdbc连接上mysql数据库了,现在实现先判断一个表是否存在,如果不存在就创建,然后执行sql语句,如果存在,则直接执行下面的sql语句!最好详细一点,给出一段...
我已经用jdbc连接上mysql数据库了,现在实现先判断一个表是否存在,如果不存在就创建,然后执行sql语句,如果存在,则直接执行下面的sql语句!
最好详细一点,给出一段代码! 展开
最好详细一点,给出一段代码! 展开
推荐于2016-03-03
展开全部
//试试这个呢
connection = DriverManager.getConnection(mySqlDbUrl, "",
"");
DatabaseMetaData meta = (DatabaseMetaData)connection.getMetaData();
ResultSet rs = meta.getTables(null, null, "AA01", null);//AA01为表名,根据你的实际情况确定
if(rs.next()){
System.err.println(true);
}else{
System.err.println(false);
}
rs.close();
connection.close();
connection = DriverManager.getConnection(mySqlDbUrl, "",
"");
DatabaseMetaData meta = (DatabaseMetaData)connection.getMetaData();
ResultSet rs = meta.getTables(null, null, "AA01", null);//AA01为表名,根据你的实际情况确定
if(rs.next()){
System.err.println(true);
}else{
System.err.println(false);
}
rs.close();
connection.close();
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
关键就是sql语句了,string strSQL = "CREATE TABLE IF NOT EXISTS `gradeinfo` ( \
`gradename` varchar(20) NOT NULL, \
`gradelevel` char NOT NULL, \
`cap_min` bigint(20) default 0, \
`cap_max` bigint(20) default 0, \
`vol_min` int(11) default 0, \
`vol_max` int(11) default 0, \
`res_min` int(11) default 0, \
`res_max` int(11) default 0, \
`reserve` varchar(50) default NULL,\
PRIMARY KEY (`gradename`,`gradelevel`) \
)DEFAULT CHARSET=utf8";
再用jdbc的语句来执行了。
`gradename` varchar(20) NOT NULL, \
`gradelevel` char NOT NULL, \
`cap_min` bigint(20) default 0, \
`cap_max` bigint(20) default 0, \
`vol_min` int(11) default 0, \
`vol_max` int(11) default 0, \
`res_min` int(11) default 0, \
`res_max` int(11) default 0, \
`reserve` varchar(50) default NULL,\
PRIMARY KEY (`gradename`,`gradelevel`) \
)DEFAULT CHARSET=utf8";
再用jdbc的语句来执行了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询