2017-10-28 1 views
2

준비된 문을 사용하여 차량 테이블에 삽입하려고합니다. This is the table shown in PHPMyAdmin.JDBC 준비 문 구문 오류

이 내 자바 코드

try { 
     String sql = "INSERT INTO vehicle (vin, serial, make, model, year, reg.no., status) VALUES (?, ?, ?, ?, ?, ?, ?)"; 
     PreparedStatement statement = con.prepareStatement(sql); 
     statement.setString(1, vin); 
     statement.setString(2, serial); 
     statement.setString(3, make); 
     statement.setString(4, model); 
     statement.setInt(5, 10); 
     statement.setInt(6, 17); 
     statement.setString(7, status); 
     System.out.println(statement.toString()); 

     int rowsInserted = statement.executeUpdate(); 
     if (rowsInserted > 0) { 
      System.out.println("A new user was inserted successfully!"); 
     } 
    } catch (Exception ex) { 
     System.out.println(ex); 
    } 

이며,이 결과 오류

com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ' status) VALUES ('dfg', 'dfgfg', 'fg', 'sd564', 10, 17, 'dsf')' at line 1 

내가 우둔 오전입니다. 테이블에서 기본 키 "id"열에 대한 값을 전달하지 않으면 어떻게됩니까?

답변

0

reg.no.은 유효한 열 이름이 아닙니다. 실제로 사용해야하는 경우 인용 부호를 사용해야합니다.

INSERT INTO vehicle (vin, serial, make, model, year, `reg.no.`, status) 
-- Here ---------------------------------------------^-------^ 
VALUES (?, ?, ?, ?, ?, ?, ?)";