我遇到SQL命令问题。
我有一个包含SQL命令的字符串,但是当我运行时,它返回一个错误:列n1不存在注意:n1是我在textField中键入的内容。
代码:
String nameprod tf_NameProd.getText = ();
String sql = "select * from Product where prod_name =" + nameprod;//<-- this is my query
iaeprod.Table(sql, tbl_Prod);
知道我失踪的地方吗?
答案 0 :(得分:2)
String sql = "select * from Product where prod_name = '" + nameprod + "'";
答案 1 :(得分:2)
您需要在SQL中的字符串周围放置单引号。例如,在你的情况下它应该是
"select * from Product where prod_name = '" + nameprod + "'";
答案 2 :(得分:2)
因为prod_name
是String
使用值
String sql = "select * from Product where prod_name ='" + nameprod+"'";
最好使用预备语句
答案 3 :(得分:1)
请改用此方法:
Connection dbConnection = getDBConnection();
PreparedStatement stmt = null;
String nameProd = "select * from Product where prod_name = ?";
stmt = connection.prepareStatement(nameProd);
stmt.setString(1, tf_NameProd.getText() );
ResultSet rs = stmt.executeQuery();
P.S。:我还没有编译这段代码。请在适当的地方放置try和catch语句