首页 新闻 会员 周边

JDBC-SQLite中遇到的问题

0
悬赏园豆:5 [已关闭问题] 关闭于 2021-04-03 17:42

向以下的方法提交数据:1,c4ca4238a0b923820dcc509a6f75849b,1(传参时全部为String)

    public static void UserRegister(String UserName, String PassWord_md5, String QQNumber) {
        //注册用户,写入数据库,如果有QQ。
        Connection c = null;
        Statement stmt = null;
        try {
            Class.forName("org.sqlite.JDBC");
            c = DriverManager.getConnection("jdbc:sqlite:ZLD_DB.db");
            c.setAutoCommit(false);

            stmt = c.createStatement();
            String sql = "INSERT INTO Users (UserName,Password,QQ) "
                    + "VALUES ("+UserName+","+PassWord_md5+","+QQNumber+");" ;
            stmt.executeUpdate(sql);

            stmt.close();
            c.commit();
            c.close();
        } catch (Exception e) {
            System.err.println(e.getClass().getName() + ": " + e.getMessage());
            System.exit(0);
        }
        System.out.println("注册操作完成");
    }

会抛出错误:org.sqlite.SQLiteException: [SQLITE_ERROR] SQL error or missing database (no such column: c4ca4238a0b923820dcc509a6f75849b)

然后就自己退出了……

请问这样写有什么问题?造成卡退的原因又是什么呢?

绫织梦CoronaZero的主页 绫织梦CoronaZero | 菜鸟二级 | 园豆:224
提问于:2021-04-03 00:22
< >
分享
所有回答(1)
0

改为:

String sql = "INSERT INTO Users (UserName,Password,QQ) "
                    + "VALUES (\'"+UserName.toString()+"\',\'"+PassWord_md5.toString()+"\',\'"+QQNumber.toString()+"\');" ;
           
绫织梦CoronaZero | 园豆:224 (菜鸟二级) | 2021-04-03 17:42
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册