tnjk.net
当前位置:首页 >> jAvA+mysql使用sql语句的问题 >>

jAvA+mysql使用sql语句的问题

String sql = "select * from bookinfo where Bookname like "+"%" + bookname + "%";

这句应该这样写st.executeUpdate("insert into Table1(name,age)values('"+name+"','"+age+"')"); sql语句有变量是要用 “+变量名+” 的形式与sql语句连接 刚开始学JDBC的朋友很容易犯这样的错误,写多了就记得了 如果你的age是整型数据的话 记得...

executeQuery是专门用于执行sql查询的方法,从你的sql来开不是查询,而是执行的见表和插入语句,这种操作应该使用executeUpdate方法,同时不要把见表语句和insert语句拼成一个整个的语句去执行,这种方式在数据库直接执行ok没问题,但通过代码走...

SQL预编译. 比如 String cusId = "10101";String sql2 = "select * from v_user where userid = ? ";//问号表示一个参数,PreparedStatement pstmt2 = conn.prepareStatement(sql2);pstmt2.setInt(1, cusId);//把cusId 的值替换到 sql2 的 第一个...

把最后的分号(;)删掉啊

pars是什么内容,你的数据源是不是oracle的?

用户名,号码,性别,email都是字符型的吧 String sql="insert into mysql.会员表(name,number,sex,email) values ('"+username+"','"+password+"','"+sex+"','"+email+"')"; 刚才说错了,是双引号在单引号里边

public class MSUpdate { private static DBSelect rid; private static DBSelect idtype; public void setDBSelect(DBSelect rid, DBSelect idtype){ this.rid=rid; this.idtype=idtype; } public static void MSup(String[] args) { MSDelete ...

那就用PreparStatement 先用?占位符 再setString(,)这样还比较安全

你说的是跨schema查询么?这样不行把,一个connection不是只能连接到一个schema上的么

网站首页 | 网站地图
All rights reserved Powered by www.tnjk.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com