sql >> データベース >  >> RDS >> Mysql

MySQLに空の文字列が挿入されないようにするための制約

    通常、これはCHECK制約を使用して行います:

    foo_test VARCHAR(50) NOT NULL CHECK (foo_test <> '')
    

    バージョン8.0より前では、MySQLは制約のサポートが制限されていました。 MySQLリファレンスマニュアル から :

    CHECK句は解析されますが、すべてのストレージエンジンで無視されます。

    古いバージョンに固執する必要がある場合は、トリガー を使用してください。 回避策として、人々が指摘しているように。

    将来的には、PostgreSQLを確認する ことをお勧めします。 、データの整合性をより適切にサポートしていると見なされます(その他多くの人



    1. MySQLで動的ピボットテーブルを作成する方法

    2. ストアドプロシージャまたは関数は、提供されていないパラメータを予期しています

    3. KEYキーワードはどういう意味ですか?

    4. SQLServerで月の最初の日を取得する3つの方法