나는 데이터베이스에 데이터를 삽입하는 코드를 작성했습니다.
String sql="INSERT INTO check (name,pass,pno) VALUES (?,?,?)";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, name);
pstmt.setString(2, pass);
pstmt.setInt(3, no1);
pstmt.executeUpdate();
SQL 주입을 피하고 preparestatement를 사용 했으므로 여전히 서버 로그 에이 오류가 발생합니다.
SEVERE: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'check (name,pass,pno) VALUES ('Nikhil Muskur','qwerty1',7898455)' at line 1
구문에 문제가 없기 때문에 두 번 확인한 다음 문제가 무엇인지 누구든지 도울 수 있습니다.
check
MySQL의 예약어 : http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html
쿼리를 다음으로 변경하십시오.
String sql="INSERT INTO `check` (`name`, `pass`, `pno`) VALUES (?,?,?)";
따라서 MySQL은 실제로 테이블에 액세스하고 있음을 이해합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다