String sql = "SELECT (Employee_name, Password) FROM employee WHERE (Employee_name = '"+name+"' AND Password = '"+password+"')";
1 열 (들)을 포함해야하며, JSP java.sql.SQLException의 삽입 연산에 다음과 같은 예외를 얻는 것은 도와주세요피연산자는 자바
1 열 (들)을 포함해야합니다.
String sql = "SELECT (Employee_name, Password) FROM employee WHERE (Employee_name = '"+name+"' AND Password = '"+password+"')";
1 열 (들)을 포함해야하며, JSP java.sql.SQLException의 삽입 연산에 다음과 같은 예외를 얻는 것은 도와주세요피연산자는 자바
1 열 (들)을 포함해야합니다.
올바른 방법은 당신이 ()
을 유지할 수 있습니다
String sql = "SELECT Employee_name, Password FROM employee WHERE Employee_name = '"+name+"' AND Password = '"+password+"'";
이다 조항이 아닌 선택 목록입니다. 이 사건
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+"')";
하는 브래킷을 제거하고 작동합니다.
String sql = "SELECT Employee_name, Password
FROM employee WHERE Employee_name = '"+name+"'
AND Password = '"+password+"'";
일반적으로 우리는 중첩 쿼리를 추가하고 조건을 결합해야 할 때 대괄호를 사용합니다. Mysql은 열 이름에 대괄호를 추가하여이를 단일 열로 식별했습니다. 그게 왜 오류가 나옵니까.
'SELECT' 목록에서 괄호를 제거하십시오. – eggyal
또한 사용자가 입력 한 이름과 비밀번호의 값을 삭제해야합니다. 그렇지 않으면 SQL 인젝션에 취약해질 수 있습니다. – Niklas
고마워요 4 통해 답변 : – user3507176