Java mysql语法错误

标签 java mysql database

我在 mysql insert 语句中遇到语法错误。我可以知道如何纠正这个错误吗?

user=txtuser.getText();
      char[] pass=jPasswordField1.getPassword();
             String passString=new String(pass);
            try{                
                Connection con = createConnection();               
                Statement st = con.createStatement();


**String sql = "INSERT INTO login(username,Password)"+"VALUES"+"('"user"','"passString"')";**
 st.executeUpdate(sql);
            }
            catch(Exception e){
                JOptionPane.showMessageDialog(null,"Exception: "+ e.toString());
            }

最佳答案

您缺少一些 + 运算符:

String sql = "INSERT INTO login(username,Password) VALUES ('" + user + "','" + passString + "')";

考虑使用 PreparedStatement 占位符来设置这些参数。这将保护您免受 SQL injection 的伤害袭也。这是一个 example

关于Java mysql语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14257446/

相关文章:

sql - 非技术人员的人性化 PostgreSQL 界面?

mysql - 如何将远程位置 xml 文件数据加载到 mysql/(任何其他)数据库

java - 是否可以使用 Java 创建 Enterprise Archetict 扩展?

java - 如何在 Spring XML 上下文中实现条件资源导入?

java - 使用 "visited"集进行递归优化,用于纯函数

mysql (innodb) 增加一个值来创建一个洞

database - 提供正确的用户名和密码,得到 ORA-01017 : invalid username/password; logon denied

java - 在另一个 Activity 中显示 Double

java - 快速在 jpanel 中添加大量 jlabel

PHP RedBean 存储 bean(如果不存在)