2013-07-26 4 views
1

в моем приложении Я пытаюсь вставить запрос в базу данных oracle с помощью jdbc. Я создаю эту таблицу:Ошибка ввода запроса в базу данных с помощью jdbc

create table TMP 
(
SYNC  NUMBER, 
USER  VARCHAR2(50), 
DAT  DATE 
) 

И я использую этот код, чтобы вставить запись:

PreparedStatement stat=null; 

    try { 
     dbStatement = dbConnection.createStatement(); 

     String sql = "INSERT INTO TMP (USER, DAT) Values (?,?);"; 

     for (ReplicationHistoryDetailVO tmpEntry : entry) { 
      if (tmpEntry.getSyncPhase() == REPLICATION_PHASE.DOWNLOAD) { 
       stat=dbConnection.prepareStatement(sql); 
       stat.setString(1, "David"); 
       stat.setDate(2, new Date(tmpEntry.getFinishTime())); 
       stat.executeUpdate();    
      } 
     } 

Из этого кода у меня есть следующее сообщение об ошибке:

Error updating database java.sql.SQLSyntaxErrorException: ORA-00911 

Соединение нормально. Я должен написать только два значения, потому что первое значение является автоинкрементным ключом, и я не устанавливаю его. Есть идеи?

ответ

2

Пробег: "INSERT INTO TMP (USER, DAT) Values (?,?)" без; в конце.

ORA-00911 is a common error for common syntax mistakes. 
Смежные вопросы