如何在JAVA 中的PreparedStatement 语句中来判断一个数据库表是否存在?

比如有一个数据库SYSTEM有很多表,我现在要找出其中是否存在TABLE1,该怎么办啊?我用的是SQLserver... 比如有一个数据库SYSTEM有很多表,我现在要找出其中是否存在TABLE1,该怎么办啊?
我用的是SQLserver
展开
 我来答
puziguo
2008-06-16 · TA获得超过1928个赞
知道小有建树答主
回答量:884
采纳率:86%
帮助的人:833万
展开全部
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import util.DBUtil;

public class TableExistTest {
public static void main(String[] args) {
String tableName = "test1";
Connection con = null;
ResultSet rs = null;
PreparedStatement ps = null;
String sql = "SELECT NAME FROM sysobjects WHERE NAME='" + tableName
+ "'";
System.out.println(sql);
try {
con = DBUtil.getConnection();//取得数据库连接
ps = con.prepareStatement(sql);
rs = ps.executeQuery();
if (rs.next()) {
System.out.println("存在" + tableName);
} else {
System.out.println("不存在" + tableName);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if (rs != null)
rs.close();
if (ps != null)
ps.close();
if (con != null)
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}

}

附加提示:

你在查询分析器里面执行这条语句,你会很兴奋

SELECT * FROM sysobjects
hardBonedKe
2008-06-16 · 超过16用户采纳过TA的回答
知道答主
回答量:56
采纳率:0%
帮助的人:55万
展开全部
oracle的话 select USER_TAB_COLS 这张表能查询出当前数据库存在的表。
剩下的就是 SELECT * FROM USER_TAB_COLS WHERE TABLE_NAME=?
对以上sql查询结果 进行 判断下吧。就能知道是否存在TABLE1了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式