关于eclipse往数据库里插入数据时返回:“该语句没有返回结果集。”问题。
conn=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=Exerci...
conn=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=Exercise;","sa","sasasa");
sql=conn.createStatement();
rs=sql.executeQuery("INSERT INTO GMCZ (规模产值) VALUES ('"+s+"')");
while(rs.next()){
if(rs.getString("规模产值")==s){
JOptionPane.showMessageDialog(null, "内容重复,数据库已有此内容","提示",JOptionPane.WARNING_MESSAGE);
}
}
sql.close();
conn.close();
上面是我的语句,我平时在数据库里写触发器时会在INSERT INTO GMCZ (规模产值) VALUES ('"+s+"')前面写set nocount on就没事了,不过在eclipse里我不知道怎么写,因为没写set nocount on然后就出现“该语句没有返回结果集。”问题了。想请教各位这个set nocount on 该加在上面哪里。 展开
sql=conn.createStatement();
rs=sql.executeQuery("INSERT INTO GMCZ (规模产值) VALUES ('"+s+"')");
while(rs.next()){
if(rs.getString("规模产值")==s){
JOptionPane.showMessageDialog(null, "内容重复,数据库已有此内容","提示",JOptionPane.WARNING_MESSAGE);
}
}
sql.close();
conn.close();
上面是我的语句,我平时在数据库里写触发器时会在INSERT INTO GMCZ (规模产值) VALUES ('"+s+"')前面写set nocount on就没事了,不过在eclipse里我不知道怎么写,因为没写set nocount on然后就出现“该语句没有返回结果集。”问题了。想请教各位这个set nocount on 该加在上面哪里。 展开
1个回答
展开全部
好像JAVA里没有这种调用方式,插入语句不能用executeQuery,用execute
然后用TRY/CATCH捕捉SQLEXCEPTION来确定内容重复的问题;
然后用TRY/CATCH捕捉SQLEXCEPTION来确定内容重复的问题;
追问
对,插入语句我不应该用那个executeQuery,不过对于你说改用execute后,用TRY/CATCH捕捉SQLEXCEPTION来确定内容重复的问题,我主要是怕,就我那个语句里如果出现不是内容重复的问题,比如还有输入的值不为空,对于两种问题,该怎么办。
追答
异常捕捉无法确定是由于哪种原因导致的问题,不过你可以分析异常信息,这样可以确定是因为哪种情况导致的,例如:异常信息包括DupliKeyException就是插入数据主键重复等情况进行具体分析。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询