Литерал не соответствует форматной строке

Я пытаюсь вставить данные в таблицу Oracle Express 10 г.

Моя таблица содержит следующие столбцы:

Field Name                           Data Type

 ATDATE                               DATE
 ATTIME                               VARCHAR2(5)
 EMPNO                                NUMBER(8)
 INOUTIND                             CHAR(1)
 TRTNO                                CHAR(3)
 FLAG                                 NUMBER(2)
 STATUS                               CHAR(1)
 LUPDT                                DATE

Теперь, когда я пытаюсь вставить данные из моего приложения C# Windows, я получаю сообщение об ошибке

ORA-01861: литерал не соответствует строке формата "

Так как я могу решить это?

Я пишу команду вставки в самой форме, используя OracleCommand,


OracleCommand cmd = new OracleCommand("INSERT INTO TMPATND values(:Atdate,:Attime,:Empno,:Inoutind,:Trtno,:Flag,:Status,:Lupdt)", con); 

:Atdate,:Attime etc are parameters. e.g: cmd.Parameters.AddWithValue(":Atdate","20120103");

В каком формате я должен передать дату? (дд / мм / гггг или ггггммдд или другие)

1 ответ

Решение

Если вы выполняете вставку с использованием параметров, вам не придется беспокоиться о формате строки.

Однако, если это не вариант, вы можете использовать:

myDate.ToString("dd-MMM-yy").ToUpper()
Другие вопросы по тегам