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

MySQLのCHECK制約が機能していません

    MySQL 8.0.16 > は、CHECK制約をサポートする最初のバージョンです。

    https://dev.mysqlをお読みください。 com / doc / refman / 8.0 / en / create-table-check-constraints.html

    MySQL 8.0.15以前を使用している場合、MySQLリファレンスマニュアル 言う:

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

    トリガーを試してください...

    mysql> delimiter //
    mysql> CREATE TRIGGER trig_sd_check BEFORE INSERT ON Customer 
        -> FOR EACH ROW 
        -> BEGIN 
        -> IF NEW.SD<0 THEN 
        -> SET NEW.SD=0; 
        -> END IF; 
        -> END
        -> //
    mysql> delimiter ;
    

    お役に立てば幸いです。



    1. Oracleクライアントとネットワークコンポーネントが見つかりませんでした

    2. Oracle sqlでの%Typeの意味は何ですか?

    3. 米国の郵便番号の境界座標を取得するにはどうすればよいですか?

    4. テーブルフィールドにハイフンを含めることはできますか?