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

mysqlテーブルに格納できる行数を制限するにはどうすればよいですか?

    MySQLが提供するそのような組み込み機能はないと思います。 1つの解決策は、トリガーを作成できることです。

    CREATE TRIGGER your_trigger_name
    BEFORE INSERT ON your_table_name
    FOR EACH ROW
    BEGIN
        DECLARE cnt INT;
    
        SELECT count(*) INTO cnt FROM your_table_name;
    
        IF cnt = 10 THEN
            SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'You can store only 10 records.';
        END IF;
    END;
    

    テーブルで上記のトリガーを試してください。 table_nameをyour_table_nameに置き換えます 。

    これがお役に立てば幸いです。



    1. 列dbo、ユーザー定義関数、または集計dbo.Splitfnが見つからないか、名前があいまいです

    2. mysql_close(connection)を使用する必要がありますか?

    3. タイムスタンプ(自動)はいつ更新されますか?

    4. SQL Serverで無効になっているすべての外部キー制約を返す方法(T-SQLの例)