java判断从ORACLE数据库读取的字段值
各位高手,又有个小问题想麻烦大家,我先贴代码:publicclassTest{//连接数据库的省略publicstaticvoidmain(String[]args){S...
各位高手,又有个小问题想麻烦大家,我先贴代码:
public class Test{
//连接数据库的省略
public static void main(String[] args){
String rsdata;
Connection conn=getConnection();
//查询结果只有一个字段值,YES,NO或者空值
String sql1="select SUB_STAT T_TJIS_SM_SUB_MONITOR WHERE SUBSYS_NAME='"+subsys_name+"' AND TOPIC_NAME='"+topic_name+"'";
String sql2="INSERT INTO T_TJIS_SM_SUB_MONITOR (SUBSYS_NAME,SUB_STAT,COUNT,TOPIC_NAME,QNAME) VALUES ('"+subsys_name+"','NO',0,'"+topic_name+"','"+qname+"')";
PreparedStatement stmt;
try {
stmt = conn.prepareStatement(sql);
ResultSet rs=stmt.executeQuery(sql);
ResultSetMetaData data=rs.getMetaData();
while(rs.next()){
for(int i = 1 ; i<= data.getColumnCount() ; i++){
rsdata = rs.getString(i);
//用System.out.println(rsdata);测试,能得到字段值
}
现在想对得到的字段值 进行判断,如果是空值,就执行sql2,
我是这样写的:
if(rsdata.length()==0){
stmt.executeUpdate(sql2);
}
这段插在for循环里,但执行报错.
不知道我错在哪,或者代码就是错的?
望各位大侠指点! 展开
public class Test{
//连接数据库的省略
public static void main(String[] args){
String rsdata;
Connection conn=getConnection();
//查询结果只有一个字段值,YES,NO或者空值
String sql1="select SUB_STAT T_TJIS_SM_SUB_MONITOR WHERE SUBSYS_NAME='"+subsys_name+"' AND TOPIC_NAME='"+topic_name+"'";
String sql2="INSERT INTO T_TJIS_SM_SUB_MONITOR (SUBSYS_NAME,SUB_STAT,COUNT,TOPIC_NAME,QNAME) VALUES ('"+subsys_name+"','NO',0,'"+topic_name+"','"+qname+"')";
PreparedStatement stmt;
try {
stmt = conn.prepareStatement(sql);
ResultSet rs=stmt.executeQuery(sql);
ResultSetMetaData data=rs.getMetaData();
while(rs.next()){
for(int i = 1 ; i<= data.getColumnCount() ; i++){
rsdata = rs.getString(i);
//用System.out.println(rsdata);测试,能得到字段值
}
现在想对得到的字段值 进行判断,如果是空值,就执行sql2,
我是这样写的:
if(rsdata.length()==0){
stmt.executeUpdate(sql2);
}
这段插在for循环里,但执行报错.
不知道我错在哪,或者代码就是错的?
望各位大侠指点! 展开
2个回答
展开全部
rsdata.length()==0
这样验证空??那要是出现null值呢。
改为:
if(rsdata.equals("")||rsdata == null){
stmt.executeUpdate(sql2);
}
吧。
这样做无论出现空值和null值能够捕获到的。
这样验证空??那要是出现null值呢。
改为:
if(rsdata.equals("")||rsdata == null){
stmt.executeUpdate(sql2);
}
吧。
这样做无论出现空值和null值能够捕获到的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询