Java中使用executeupdate无法插入新记录。

importjava.sql.*;publicclassSimpleJdbc{publicstaticvoidmain(String[]args){//TODOcodea... import java.sql.*;
public class SimpleJdbc {
public static void main(String[] args) {
// TODO code application logic here
String s="ICC";
String s2="高富帅";
String s3="1923use";
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException c){ }
try{
Connection conn=DriverManager.getConnection("jdbc:odbc:BooksManage");
System.out.println("Driver loaded");
Statement stat=conn.createStatement();
stat.executeUpdate("insert into dbo.Adminis(num,name,paswrd,remark) values ('"+s+"','"+s2+"',"+s3+",'"+"管理员')");
ResultSet resultset=stat.executeQuery("select * from dbo.Adminis");
while(resultset.next()){
String ID=resultset.getString("ID");
String num=resultset.getString("num");
String paswrd=resultset.getString("paswrd");
String remark=resultset.getString("remark");
String name=resultset.getString("name");
System.out.println(ID+"\t"+"\t"+num+"\t"+name+"\t"+paswrd);
}
conn.close();
}catch(SQLException sqe){}
}
}
stat.executeUpdate那句如果直接写常量,比如stat.executeUpdate("insert into dbo.Adminis(num,name,paswrd,remark) values('ICCE','楼主','slang','supervisior')");
就可以插入成功并显示出来,但是如果像上面那种写法——
stat.executeUpdate("insert into dbo.Adminis(num,name,paswrd,remark) values('"+s+"','"+s2+"',"+s3+",'"+"管理员')");
就无论如何也无法插入任何记录,求教,我该如何做才能插入一条带字符串的记录?谢谢!!
展开
 我来答
百度网友845f74e61
2012-05-27 · TA获得超过6929个赞
知道大有可为答主
回答量:4050
采纳率:50%
帮助的人:1641万
展开全部
stat.executeUpdate("insert into dbo.Adminis(num,name,paswrd,remark) values('"+s+"','"+s2+"',"+s3+",'"+"管理员')");

这个写法S3处少了单引号
,"+s3+",

,'"+s3+"',
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式