当前位置: 首页 > 编程笔记 >

在第一个表中实现MySQL触发器以在第二个表中插入记录?

东方新霁
2023-03-14
本文向大家介绍在第一个表中实现MySQL触发器以在第二个表中插入记录?,包括了在第一个表中实现MySQL触发器以在第二个表中插入记录?的使用技巧和注意事项,需要的朋友参考一下

为此,语法如下-

DELIMITER //
create trigger yourTriggerName before insert on yourTableName1
   for each row
   begin
         insert into yourTableName2 values (yourValue1,yourValue2,...N);
end ;
//
DELIMITER ;

让我们首先创建一个表-

mysql> create table DemoTable1
(
   StudentId int,
   StudentName varchar(40)
);

这是创建第二个表的查询-

mysql> create table DemoTable2(
   Id int,
   Name varchar(40)
);

这是插入之前的触发器查询-

mysql> DELIMITER //
mysql> create trigger afterinserttrigger before insert on DemoTable1 for each row
   begin
      insert into DemoTable2 values (10,'Chris');
   end ;
//
mysql> DELIMITER ;

让我们将记录插入第一个表-

mysql> insert into DemoTable1 values(1,'David');

现在,您可以使用select语句显示第一个表中的所有记录-

mysql> select *from DemoTable1;

这将产生以下输出-

+-----------+-------------+
| StudentId | StudentName |
+-----------+-------------+
|         1 | David       |
+-----------+-------------+
1 row in set (0.00 sec)

让我们检查第二张表的表记录-

mysql> select *from DemoTable2;

这将产生以下输出-

+------+-------+
| Id   | Name  |
+------+-------+
|   10 | Chris |
+------+-------+
1 row in set (0.00 sec)
 类似资料:
  • 问题内容: 我有两个桌子和。我需要一些行插入从,它被插入之后。我知道这个问题,但我无法解决。请帮忙。 我为触发器编写了以下代码: 现在,当我插入行时,将添加到,但不添加到。它引发以下错误: _消息515,级别16,状态2,过程trigger_UpdateItemDetails,行11 无法将值NULL插入表’dbStockHandling.dbo.tbl_ItemDetails’的列’Purcha

  • 我正在尝试创建一个触发器,该触发器将在更新另一个表之后更新一个表。我需要它,这样如果数字列中的一个数字被更新,那么这需要记录在另一个表中。这就是我到目前为止所拥有的。。 测试更新到表: 如您所见,我正在尝试将新插入的用户编号存储到一个变量中,然后该变量将用于填充user_changes表的insertednumber列。任何帮助都将不胜感激,谢谢!

  • 我有两个表客户和订单,下面是结构。 表-客户 ID customer_name 表-订单 ID order_id customer_id customers表包含customers记录,orders表包含客户下的订单, orders表中的customer_id链接到customers表的id字段。 现在一个客户可以有零或一个或多个订单,我想要得到客户下的最后一个订单只。 当我运行以下查询(一个简单

  • 本文向大家介绍在单个MySQL查询中使用两个SELECT语句将值从第一张表插入第二张表,包括了在单个MySQL查询中使用两个SELECT语句将值从第一张表插入第二张表的使用技巧和注意事项,需要的朋友参考一下 若要使用两个SELECT语句将值从第一个表插入另一个表,请使用SUBQUERY。这将允许您仅使用单个MySQL查询来获取第二个表中的结果。让我们首先创建一个表- 使用插入命令在表中插入一些记录

  • 问题内容: 我正在寻找在表上创建MySQL触发器。本质上,我正在创建活动流,并且需要记录用户的操作。当用户发表评论时,我希望该表上的数据库触发器触发并: 抓住最后插入的行的ID(注释行的ID)。 使用最后插入的行中的数据对活动表执行INSERT。 实际上,我将复制此触发器以删除评论。 我的问题: LAST_INSERT_ID()是获取ID的最佳方法吗? 如何正确存储最后插入的注释行中的数据,以便在

  • 以下是我想做的: 当表中有新的 时,我需要通过设置 ' 来更新中的行 = ,以表示特定(旧)帐户已被编辑。 要求不是操作新插入的列,而是使用< code>pk = NEW.edit_on操作已经存在的列 但是,我无法更新同一个表: 请建议一个解决方法 PS:我已经完成了更新同一表后在触发器中更新表、插入到同一表中触发器mysql、在同一表上用插入后触发器更新以及在表上用Insert和update在