编写一个触发器以保存对表Goods的所有修改(包括更新和删除)。
创始人
2024-12-06 06:00:31
0

触发器可以在数据库中自动执行指定的操作,根据需求来编写触发器。在本例中,我们需要编写一个触发器,以确保所有对Goods表的更改都被保存。

以下是用于创建这个触发器的SQL代码:

CREATE TRIGGER goods_trigger AFTER UPDATE,DELETE ON Goods FOR EACH ROW BEGIN INSERT INTO Goods_log (id, Name, description, price, action) VALUES (OLD.id, OLD.Name, OLD.description, OLD.price, 'deleted') WHERE OLD.id IS NOT NULL;

INSERT INTO Goods_log (id, Name, description, price, action)
VALUES (NEW.id, NEW.Name, NEW.description, NEW.price, 'updated')
WHERE NEW.id IS NOT NULL;

END;

触发器将在每次更新或删除操作后执行,并将在一个名为Goods_log的日志表中添加一条日志。每个日志条目将包括商品的ID、名称、描述、价格和操作类型。此操作类型将告知我们是已更新商品还是已删除商品。

相关内容

热门资讯

Android Recycle... 要在Android RecyclerView中实现滑动卡片效果,可以按照以下步骤进行操作:首先,在项...
安装apache-beam==... 出现此错误可能是因为用户的Python版本太低,而apache-beam==2.34.0需要更高的P...
Android - 无法确定任... 这个错误通常发生在Android项目中,表示编译Debug版本的Java代码时出现了依赖关系问题。下...
Android - NDK 预... 在Android NDK的构建过程中,LOCAL_SRC_FILES只能包含一个项目。如果需要在ND...
Akka生成Actor问题 在Akka框架中,可以使用ActorSystem对象生成Actor。但是,当我们在Actor类中尝试...
Agora-RTC-React... 出现这个错误原因是因为在 React 组件中使用,import AgoraRTC from “ago...
Alertmanager在pr... 首先,在Prometheus配置文件中,确保Alertmanager URL已正确配置。例如:ale...
Aksnginxdomainb... 在AKS集群中,可以使用Nginx代理服务器实现根据域名进行路由。以下是具体步骤:部署Nginx i...
AddSingleton在.N... 在C#中创建Singleton对象通常是通过私有构造函数和静态属性来实现,例如:public cla...
Alertmanager中的基... Alertmanager中可以使用repeat_interval选项指定在一个告警重复发送前必须等待...