mariadbでdateのカラムにnullを認める

まずは現在の状況をチェック
MariaDB [(none)]> SELECT @@SESSION.sql_mode;
前略
|STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,
NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
あれー、NO_ZERO_IN DATE もNO_ZERO_DATE も入っていない。
これがDATEカラムにnullが認められないが、入っていないのでSTRICT_TRANS_TABLESだけを削除する

MariaDB [(none)]> SET SESSION sql_mode = ‘ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION’;
うんで、再度チェック
MariaDB [(none)]>
SELECT @@SESSION.sql_mode;
| ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,
NO_ENGINE_SUBSTITUTION |
STRICT_TRANS_TABLESを取ると、NO_ZERO_IN DATE や NO_ZERO_DATEが入っていても、ワーニングを出し、データーは保存されるようだ。


フジマル について

1947年生れ、東京電機大学二部電気通信工学科卒、最後はスリランカ航空で営業だったのですが2018年に㈱インパック・ジャパンに再就職。趣味:登山、スキー、車いじり、コンピューター
カテゴリー: Linux運用時のメモ パーマリンク

コメントを残す

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

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください