如何判断数据库中某个字段不存在(用java编写)

 我来答
bd9006
推荐于2017-07-01 · TA获得超过2.5万个赞
知道大有可为答主
回答量:4.8万
采纳率:63%
帮助的人:1.6亿
展开全部
想快,就根据数据库,直接读取结构的表,

否则,SELECT * FROM table (添加一个条件,别读回所以记录,如WHERE 1=2之类)

再通过ResultSet来判断
ResultSetMetaData getMetaData()
得到 ResultSetMetaData 再逐个field比较
刑画0HWa20
2012-12-24 · TA获得超过3825个赞
知道大有可为答主
回答量:1.2万
采纳率:0%
帮助的人:3106万
展开全部
选择COLUMN_NAME数(1)
有COUNT(1)> 1;

这条语句的重复记录只显示数值COLUMN_NAME
重复的记录直接从table_name
组过滤掉。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lmy_sk521
2012-12-22 · TA获得超过2272个赞
知道小有建树答主
回答量:1330
采纳率:73%
帮助的人:716万
展开全部
ResultSet rs = sm.executeQuery("select * from XXX");
ResultSetMetaData rsmd = rs.getMetaData();
int columnCount = rsmd.getColumnCount();
for(int i=1;i<=columnCount;i++){
System.out.println(rsmd.getColumnName(i));
//rsmd.getColumnName(i)返回列名
//在这判断是不是存在你要找的列
}
追问
rsmd.getColumnName(i)这个可以与null比较吗
追答
当然可以了
rsmd.getColumnName(i)!= null
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ljcfeixiang
2017-06-26 · 超过20用户采纳过TA的回答
知道答主
回答量:42
采纳率:0%
帮助的人:18.8万
展开全部
ResultSet rset= sm.executeQuery("select * from yourtable");
ResultSetMetaData rsmd = rset.getMetaData();
int count = rsmd.getColumnCount();
String yourClumnName = "xxxxx";
Boolean flag = false;
for(int i=1;i<=count;i++){
String currentColumnName = rsmd.getColumnName(i));
if (currentColumnName.equeals(yourClumnName )){
flag = true
}
if(flag){
//该字段存在
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式