MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLフィールドにゼロ値が含まれないようにしますか?


MySQLフィールドにゼロ値が含まれないようにするには、テーブルでINSERTの前にトリガーを使用します。まずテーブルを作成しましょう-

mysql> create table DemoTable(Value int);
Query OK, 0 rows affected (0.85 sec)

MySQLフィールドにゼロ値が含まれないようにするトリガーを作成しましょう-

mysql> DELIMITER //
mysql> create trigger preventing_to_insert_zero_value
   before insert on DemoTable
   for each row
   begin
      if(new.Value = 0) then SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'You can not provide 0 value';
   END if;
end
//
Query OK, 0 rows affected (0.34 sec)
mysql> DELIMITER ;

テーブルに0の値を挿入し、値が挿入されるかどうかを確認しましょう。許可されません-

mysql> insert into DemoTable values(0);
ERROR 1644 (45000): You cannot provide 0 value

したがって、上記の表では、トリガーのために0の値を挿入することはできません。ただし、他の値を挿入することはできます。

ここで、挿入コマンド-

を使用してテーブルにいくつかのレコードを挿入しましょう。
mysql> insert into DemoTable values(10);
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable values(-1000);
Query OK, 1 row affected (0.41 sec)

selectステートメントを使用してテーブルのすべてのレコードを表示する-

mysql> select *from DemoTable;

これにより、次の出力が生成されます-

+-------+
| Value |
+-------+
| 10    |
| -1000 |
+-------+
2 rows in set (0.00 sec)

  1. MySQLは特定の行と列に値を挿入します

    まずテーブルを作成しましょう- mysql> create table DemoTable1569    -> (    -> StudentId varchar(10),    -> StudentName varchar(20)    -> ); Query OK, 0 rows affected (3.05 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1569 values('

  2. MySQLの別のフィールドからフィールドの値を導出する方法は?

    このために、ユーザー定義変数の概念を使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable1868      (      Value int      ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1868 values(10); Query OK, 1 row affected (0