SQL 我有这样一条JAVA语句:("insert into EMPLOYEE (empno,ename,position,res) values(no,name,zw, bz )"); 这些是变量:no,name,zw, bz;我怎么写才能把这些变量的值给 empno,ename,position,res,谢谢大家指点: 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 String name="zhangsan"; String zw="haha"; String bz="lala"; String sql="insert into EMPLOYEE (empno,ename,position,res) values(?,?,?,?)"; try { java.sql.PreparedStatement ps = con.prepareStatement(""); ps.setInt(1,no); ps.setString(2,name); ps.setString(3,zw); ps.setString(4,bz); ps.executeUpdate(); } catch (SQLException ex) { ex.printStackTrace(); } 这写错了java.sql.PreparedStatement ps = con.prepareStatement(sql); no,name,zw, bz 里的值都是我从文本框里获得的,我现在要把他们的值插到数据库里, SQL说穿了就是字符串,这种直接在程序里面嵌sql代码的方式,我不是很赞成,这样不好维护,也容易出问题,当然,如果你一定要这么做的话,我建议,写一个SqlCast类,实现各种java类型到Sql类型的转换,最常见的是字符串类型转换为数据库的字符串类型的问题比如:I'm guileen转换为sql字符串应该是 'I''m guileen' ,前后要加一个单引号,中间的单引号要替换为两个单引号。而你说的那条语句就可以是"insert into EMPLOYEE (empno,ename,position,res) values("+sqlcast.cast(no)+","+sqlcast.cast(name)+","+sqlcast.cast(zw)+","+sqlcast.cast(bz)+")" jbuilder9中使用jdk1.5版本出错的问题 关于测试JSP页面的问题 我这段代码编译总是被告知:缺少class或interface 在线等! 一个程序里面创建多个JFrame要注意什么? Javamail的问题 progressMonitor 急!!如何用udp协议传输大文件??谢谢 几道作业题目据说是剑桥大学研究生一年级的作业 条件判断的一个问题 高分请教一个Timer类的简单问题!一定送高分! 各位,帮我看看这个错误,是怎么回事.如何解决,谢谢... Netbean中自动生成的代码不能编辑?
String zw="haha";
String bz="lala";
String sql="insert into EMPLOYEE (empno,ename,position,res) values(?,?,?,?)";
try {
java.sql.PreparedStatement ps = con.prepareStatement("");
ps.setInt(1,no);
ps.setString(2,name);
ps.setString(3,zw);
ps.setString(4,bz);
ps.executeUpdate();
}
catch (SQLException ex) {
ex.printStackTrace();
}
java.sql.PreparedStatement ps = con.prepareStatement(sql);
数据库里,
比如:I'm guileen
转换为sql字符串应该是 'I''m guileen' ,前后要加一个单引号,中间的单引号要替换为两个单引号。而你说的那条语句就可以是
"insert into EMPLOYEE (empno,ename,position,res) values("
+sqlcast.cast(no)+","
+sqlcast.cast(name)+","
+sqlcast.cast(zw)+","
+sqlcast.cast(bz)
+")"