使用触发器更新 Table 的特定行
Update particular row of Table Using Trigger
我想创建一个触发器来更新 table 的特定记录。例如
来自后端
假设我有一个名为 Video 的 table,它有一个名为 Link 的列,我将在其中放置 www.google.com
等网站的 link
来自前端
我有一个表格,用户将填写表格并在一个文本字段中输入网站地址并提交,然后在提交时,相同的网站地址将在数据库中的视频 table 中更新并创建新记录.
现在,我想在 table 视频中更新新记录时创建一个触发器,我想通过将 link 包含在里面来更改 link 的值<iframe>
.
例如,如果用户从前端在表单中输入 www.google.com
并提交,值 (www.google.com)
将进入数据库,一旦进入数据库,其值应从 www.google.com
到 <iframe src = "https://www.google.com">
通过使用触发器。
我做不到,我尝试了网上的许多选项。但没有 success.Pl 帮助如何创建此触发器
CREATE TRIGGER ins_sum AFTER INSERT ON video
FOR ROW WHERE ID = (SELECT max(ID) FROM video) SET embed_code = embed_code + "Test";
报错
The following query has failed: "CREATE TRIGGER `frame` BEFORE INSERT ON `video` FOR EACH ROW CREATE TRIGGER ins_sum AFTER INSERT ON video FOR ROW WHERE VID = (SELECT max(VID) FROM video) SET embed_code = embed_code + "Test";"
MySQL said: #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'ROW WHERE VID = (SELECT max(VID) FROM video) SET embed_code = embed_code + "T...' at line 1
谢谢
如我提供的 Link 所示,我们必须知道所有表格的布局,至少是相关部分。
但我认为您正在寻找这样的触发器
DELIMITER $$
CREATE TRIGGER after_LINK_insert
AFTER INSERT
ON video FOR EACH ROW
BEGIN
UPDATE LINK SET VIDEO = CONCAT('<iframe src = "',NEW.LINL,'" ...att />') WHERE ID = NEW.ID;
END$$
DELIMITER ;
如果您在查询中添加 trogger,则需要使用分隔符 window。
我想创建一个触发器来更新 table 的特定记录。例如
来自后端
假设我有一个名为 Video 的 table,它有一个名为 Link 的列,我将在其中放置 www.google.com
来自前端 我有一个表格,用户将填写表格并在一个文本字段中输入网站地址并提交,然后在提交时,相同的网站地址将在数据库中的视频 table 中更新并创建新记录.
现在,我想在 table 视频中更新新记录时创建一个触发器,我想通过将 link 包含在里面来更改 link 的值<iframe>
.
例如,如果用户从前端在表单中输入 www.google.com
并提交,值 (www.google.com)
将进入数据库,一旦进入数据库,其值应从 www.google.com
到 <iframe src = "https://www.google.com">
通过使用触发器。
我做不到,我尝试了网上的许多选项。但没有 success.Pl 帮助如何创建此触发器
CREATE TRIGGER ins_sum AFTER INSERT ON video
FOR ROW WHERE ID = (SELECT max(ID) FROM video) SET embed_code = embed_code + "Test";
报错
The following query has failed: "CREATE TRIGGER `frame` BEFORE INSERT ON `video` FOR EACH ROW CREATE TRIGGER ins_sum AFTER INSERT ON video FOR ROW WHERE VID = (SELECT max(VID) FROM video) SET embed_code = embed_code + "Test";"
MySQL said: #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'ROW WHERE VID = (SELECT max(VID) FROM video) SET embed_code = embed_code + "T...' at line 1
谢谢
如我提供的 Link 所示,我们必须知道所有表格的布局,至少是相关部分。
但我认为您正在寻找这样的触发器
DELIMITER $$
CREATE TRIGGER after_LINK_insert
AFTER INSERT
ON video FOR EACH ROW
BEGIN
UPDATE LINK SET VIDEO = CONCAT('<iframe src = "',NEW.LINL,'" ...att />') WHERE ID = NEW.ID;
END$$
DELIMITER ;
如果您在查询中添加 trogger,则需要使用分隔符 window。