Cannot insert NULL into | Ячейка таблицы имеет параметр NOT NULL, значит при INSERT обязательно упоминание этой ячейки |
invalid identifier | Неправильное имя у ячейки таблицы. Заметьте, что все имена должны быть заглавными буквами. Что-бы исключить ошибку с использованием зарезервированных слов - используйте двойные кавычки при обращении с данными |
| ORA-00911: invalid character | Используйте двойные кавычки при работе с данными и называйте колонки только буквами и цифрами |
ORA-01741: | Данные не могут быть пустыми |
ORA-00926: missing VALUES keyword | В отличие от Mysql, где можно использовать |
| ORA-01861: literal does not match format string | Возможно проблема с форматами данных типа date.to_date('2008-08-13','yyyy-mm-dd'); |
ORA-07217 sltln: environment variable cannot be evaluated | Вероятно неуказан SID (т.е. домен или IP host-сервера) |
| ORA-01722: invalid number | Вы пытаетесь использовать string-тип вместо integer-типа данных стобца (не надо заключать integer в кавычки при INSERT) |
ORA-01756: quoted string not properly terminated | В данных - открытый апостроф, либо данные не заключены в парные апострофы. В Mysql данные используется система преобразования ' в \' , не без помощи addslashes в php. В Oracle же апостроф просто дублируется (' в '').. В php - через str_replace("'","''",$src); |
| ORA-01704: string literal too long | Даже с использованием типов данных, поддерживающих более 4 тыс. символов, Oracle не любит длинные SQL и большие данные предпочитает принимать через PL/SQL декларации . С десятой версии Oracle это ограничение поднято до 20 тыс. Как второсортное решение - использовать постепенный UPDATE. rpad в данном примере просто генерирует кучу символов, не обращайте внимания. UPDATE tableWithClob SET clobcol=clobcol||(rpad('X', 2300)) WHERE ID=17 |