Литерал не соответствует форматной строке - PullRequest
0 голосов
/ 04 января 2012

Я пытаюсь вставить данные в таблицу оракула 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 Ответ

2 голосов
/ 04 января 2012

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

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

myDate.ToString("dd-MMM-yy").ToUpper()
...