준비된 명령문 내에서 SQL 코드 구문 오류가 발생합니다. 사이트에서 다른 답변을 읽었으므로 문제를 해결할 수 없습니다. 다음과 같이 내 코드는Java Mysql 준비된 문 구문 문제
private boolean validate_login(String username,String password) {
try{
Class.forName("com.mysql.jdbc.Driver"); // MySQL database connection
String url = "jdbc:mysql://localhost/db_webstore";
String user = "root";
String pw = "Password";
String SQL = "select * from tbl-users where Tbl-UsersUserName=? and Tbl-UsersPassword=?";
Connection conn = DriverManager.getConnection(url, user, pw);
PreparedStatement pst;
pst = conn.prepareStatement(SQL);
pst.setString(1, username);
pst.setString(2, password);
ResultSet rs = pst.executeQuery();
if(rs.next())
return true;
else
return false;
}
catch(Exception e){
e.printStackTrace();
return false;
}
}
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException을 다음과 같이 오류 메시지가 : 당신은 당신의 SQL 구문에 오류가 있습니다; 올바른 구문을 찾으려면 MySQL 서버 버전에 해당하는 설명서를 확인하십시오. 여기서 '-users'는 Tbl-Users의 SQL 구문에 오류가 있습니다. '-users'근처에서 사용할 올바른 문법은 MySQL 서버 버전에 해당하는 설명서를 확인하십시오.
누구든지 조언을 해 줄 수 있습니까? 미리 감사드립니다.
수 우리가 TBL 사용자 구조를 다음과 같이 수정해야 데이터베이스 연결에 (
MySQL
에 대한3306
이다) 포트 번호를 포함해야합니까? – Malinga은 tbl-users 유효한 테이블 이름입니까? –
@anaspa 유효한 것으로 보이지 않습니다. http://dev.mysql.com/doc/refman/5.7/en/identifiers.html – Tom