int rs=stmt.executeUpdate("insert into information (学号,姓名) values("+Integer.parseInt(s1)+s2")" );
s1 s2 s3 s4 s5 s6都是从TextField文本框里面用getText()返回来的字符串,有的字符串,比如姓名的字符串在sql语句里是要加单引号的,但是像上面写s2是不能加单引号的,加上就显示错误,而且它本身是加着双引号的,怎么办呢?该怎么写呢?运行的时候显示sql语句出错我用的是sql server的jdbc驱动
String sql ="insert into information (学号,姓名) values("+Integer.parseInt(s1)+",'"+s2+"')";
preparedStatement pstmt = conn.preparedStatement(insert into 表名 values(?,?,?));
pstmt.setInt(第几个值,值);
pstmt.setString(第几个值,值);
pstmt.setInt(1,s1);
pstmt.setString(2,"s2");
这样应该可以吧,你可以试试
"insert into information (学号,姓名) values("+Integer.parseInt(s1)+"'s2')"
或者用预编译的PreparedStatement,这样还能防止sql注入的问题