String sql = "SELECT (Employee_name, Password) FROM employee WHERE (Employee_name = '"+name+"' AND Password = '"+password+"')";
并在 JSP java.sql.sqlexception 中获取以下异常插入操作数应包含 1 列
请帮忙。
String sql = "SELECT (Employee_name, Password) FROM employee WHERE (Employee_name = '"+name+"' AND Password = '"+password+"')";
并在 JSP java.sql.sqlexception 中获取以下异常插入操作数应包含 1 列
请帮忙。
正确的方法是
String sql = "SELECT Employee_name, Password FROM employee WHERE Employee_name = '"+name+"' AND Password = '"+password+"'";
您可以保留()
for where 子句,但不能保留在选择列表中。这就是您的情况
mysql> select (firstname,email) from users limit 1 ;
ERROR 1241 (21000): Operand should contain 1 column(s)
删除括号,它会工作。
String sql = "SELECT Employee_name, Password
FROM employee WHERE Employee_name = '"+name+"'
AND Password = '"+password+"'";
通常,当我们需要添加嵌套查询和组合条件时,我们会使用括号。如果为列名添加括号,Mysql 将其识别为单列。这就是错误按原样出现的原因。
您的查询必须是这样的:
String sql = "SELECT Employee_name, Password
FROM employee
WHERE (Employee_name = '"+name+"'
AND Password = '"+password+"')";