LoginSignup
5
2

More than 5 years have passed since last update.

application.ymlでJdbcTypeForNullにNULLを指定する場合はクォーテーションをつける

Posted at

タイトルのとおりです。単純なことですがハマったので書き残しておきます。

環境

  • Spring Boot 2.0.2
  • MyBatis 1.3.2

application.ymlにおけるJdbcTypeForNullの設定方法

yamlで値としてNULLを指定すると、読み込み時にnull値として扱われてしまいます。
JdbcTypeForNullの値にJdbcType.NULLを設定したい場合、application.ymlではクォーテーション付きで'NULL'と指定する必要があります。

application.yml
mybatis:
  configuration:
    jdbc-type-for-null: 'NULL'

ちなみに、プロパティファイルの場合は、値は常に文字列で扱われるため、クォーテーションは必要ありません

application.properties
mybatis.configuration.jdbc-type-for-null=NULL

JdbcTypeForNullについて

DBのカラムにnullを設定する際は、NULL値とJDBC型のマッピングを指定する必要があります。
Mybatisでは、デフォルトでJdbcType.OTHERが指定されるように設定されていますが、Oracleなど一部のJDBCドライバはJdbcType.OTHERをサポートしていないため、デフォルト設定ではエラーが発生します。
Oracleの場合はJdbcType.NULLを指定すると解決するようです。

参考URL

5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2