別のテーブルに行を挿入するMySQLトリガー?
まず、テーブルを作成しましょう。 CREATEコマンドを使用してテーブルを作成します。
mysql> create table Table1 -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.62 sec)
別のテーブルを作成しましょう。
mysql> create table Table2 -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.49 sec)
さて、トリガーを作成する方法は次のとおりです。
mysql> delimiter # mysql> create trigger Table1Trigger after insert on Table1 -> for each row -> begin -> insert into Table2(id, name) values (new.id, new.name); -> end# Query OK, 0 rows affected (0.29 sec) mysql> delimiter ;
トリガーを作成するには、区切り文字を変更する必要があります。
行をTable1に挿入すると、トリガーがアクティブになり、レコードがTable2に挿入されます。表1にレコードを挿入します。
mysql> insert into Table1 values(1,'John'),(2,'Smith'),(3,'Carol'); Query OK, 3 rows affected (0.28 sec) Records: 3 Duplicates: 0 Warnings: 0
レコードが両方のテーブルに挿入されているかどうかを確認します。
mysql> select *from Table1;
これは、表1に正常に挿入されたレコードを示す出力です。
+------+-------+ | id | name | +------+-------+ | 1 | John | | 2 | Smith | | 3 | Carol | +------+-------+ 3 rows in set (0.00 sec)
2番目のテーブルを確認します。
mysql> select *from Table2;
以下は、表2に正常に挿入されたレコードを示す出力です。
+------+-------+ | id | name | +------+-------+ | 1 | John | | 2 | Smith | | 3 | Carol | +------+-------+ 3 rows in set (0.00 sec)
-
別のテーブルの値を使用したINSERTINTOのMySQLクエリ?
これには、INSERTINTOSELECTステートメントを使用します。 テーブルを作成しましょう- 例 mysql> create table demo82 -> ( -> id int, -> name varchar(20) -> ); Query OK, 0 rows affected (2.06 挿入コマンド-を使用して、いくつかのレコードをテーブルに挿入します。 例 mysql> insert into demo82 values(100,&
-
MySQLのあるテーブルから別のテーブルにデータを挿入しますか?
あるテーブルから別のテーブルにデータを挿入するには、INSERTINTOSELECTステートメントを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1 -> ( -> Id int, -> FirstName varchar(20) -> ); Query OK, 0 rows affected (0.49 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> i