2013-04-24 8 views
2

Я вынул List<SomeBean> с помощью инструкции select. Теперь, я пытаюсь использовать insert. Этот оператор вставки работает нормально; однако я не могу вставить нулевые значения. В таблице нет ограничений NOT NULL. Следующее исключение сгенерировано:Вставить null в базу данных

org.springframework.jdbc.UncategorizedSQLException: Error setting null for parameter #4 with JdbcType OTHER . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property. Cause: java.sql.SQLException: Invalid column type

Как я могу вставить нулевые значения в mybatis?

+0

что произойдет, если вы не установите его значение в вашем 'insert' заявление ??? !!! –

ответ

5

При установке нулевого параметра в подготовленный оператор или вызываемый запрос MyBatis должен знать тип jdbc. Как это:

#{myNullParamenter, jdbcType=VARCHAR2} 
+1

Thx! проходил то же самое в учебнике mybatis. 'NOTE Тип JDBC требуется JDBC для всех столбцов с нулевым значением, если значение null передано как значение. Вы можете сами изучить это, прочитав JavaDocs для метода PreparedStatement.setNull(). ' – abc

5

вставить эту строку в файл конфигурации MyBatis:

<settings> 
     <setting name="jdbcTypeForNull" value="NULL" /> 
</settings>