Spring bootでPostgreSQLのbit(1)にインサートするときにハマった

求人
Spring bootでPostgreSQLのbit(1)にインサートするときにハマった

PostgreSQLのbit(1)はCREATE TABLEで以下のように書くと定義できます。

これでsetting列がbit(1)になります。

A5M2ツールなどからインサート文を発行してみます。

これはいずれもエラーとなります。

このようにB'1'、またはB'0'とするとインサートが正常に実行されます。

Spring bootでJdbcTemplateで記述する場合は、CAST(? AS bit(1))みたいに書かないとプレースホルダを使用して上手くインサートやアップデートができません。

selectする場合

ちなみにbit(1)列をselect文で取得したい場合は以下のように記述すれば取得できます。この時はBooleanを指定するようです。

スポンサーリンク
  • このエントリーをはてなブックマークに追加
スポンサーリンク

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA