SQL练习41:构造一个触发器audit_log,在向employees表中插入一条数据的时候,触发插入相关的数据到audit中

构造一个触发器用于插入数据之后插入 题目描述 构造一个触发器audit_log,在向employees_test表中插入一条数据的时候,触发插入相关的数据到audit中。 CREATE TABLE employees_test( ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50)... 阅读详情

SQL练习41:构造一个触发器audit_log,在向employees表中插入一条数据的时候,触发插入相关的数据到audit中

题目链接:牛客网

题目描述
构造一个触发器audit_log,在向employees_test表中插入一条数据的时候,触发插入相关的数据到audit中。

CREATE TABLE employees_test(
ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR(50),
SALARY REAL
);
CREATE TABLE audit(
EMP_no INT NOT NULL,
NAME TEXT NOT NULL
);

解法

CREATE TRIGGER audit_log AFTER INSERT ON employees_test FOR EACH ROW
BEGIN
    INSERT INTO audit VALUES (NEW.ID, NEW.NAME);
END;

触发器
监视某种情况,并触发某种操作,它是提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,例如当对一个表进行操作( insert,delete, update)时就会激活它执行。

至于触发器的貌似很多人都不太愿意使用,更愿意使用存储过程,原因如下:
存储过程需要显式调用,阅读源码的时候你能知道存储过程的存在,而触发器必须在数据库端才能看到,容易被忽略。


为什么大家都不推荐使用MySQL触发器而用存储过程?

SQL Server 实验七 存储过程和触发器 SQL Server 实验七 存储过程和触发器 这是一个系列,需几个文档一起看 --实验7.1存储过程 --(1)使用Employees中员工人数来初始化一个局部变量,并调用这个存储过程 Create PROCEDURE test @number1 int output --输出参数,可以从程序中返回信息 As begin Declare @number2 int Set @number2=(Select COUNT(*) from Employees) Set @number1=@number2 e 阅读详情

相关推荐

Matlab TreeBagger实战:用随机森林预测房价的5个关键步骤(附完整代码)

本文详细介绍了使用Matlab的TreeBagger工具包构建随机森林模型预测房价的完整流程。通过波士顿房价数据集实战,涵盖数据预处理、模型构建、参数调优、特征重要性分析及高级应用(如分位数回归)等5个关键步骤,并附有完整代码,帮助读者快速掌握这一强大的回归分析工具。

ol789012的博客 444

SQL235 构造一个触发器audit_log

构造一个触发器audit_log,在向employees_test表中插入一条数据的时候,触发插入相关的数据到audit中。

11 437

SDM660电源部分配置:

SDM660电源部分配置: Panel power supplies 1、Reference power supplies Description Name Regulator Voltage (V) Panel power supply 0 vddio PMIC 660/L11 1.8 Panel power supply 1 Lab PMIC 660/lab 4.6 Panel power s...

weixin_41811215的博客 4728

构造一个触发器audit_log

sql实战 构造一个触发器audit_log问题描述Sql语句 问题描述 构造一个触发器audit_log,在向employees_test表中插入一条数据的时候,触发插入相关的数据到audit中。 CREATE TABLE employees_test( ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL ); CREATE TABLE audit( EMP_no

allin的博客 453

Clion+platformIO开发ESP32时找不到lib文件中引入第三方库的头文件(头文件下有波浪线),实际编译是成功的解决方法

Clion+platformIO开发ESP引入第三方库文件编译器无法找到.h文件但编译成功

zs5218的博客 1852

故障诊断知识库建设指南

从数据融合到知识图谱构建,从智能推理引擎开发到动态进化机制落地,故障诊断知识库的建设路径已形成 “数据 - 知识 - 智能” 的闭环体系。随着大模型技术的深度融入,知识库将实现从 “规则驱动” 到 “认知推理” 的跨越 —— 通过自然语言理解解析复杂故障描述、多模态分析融合图像与信号数据、预测性算法推演故障发展趋势,持续提升诊断的精准度与前瞻性。

极昆仑智慧 1232

牛客SQL练习-41-构造一个触发器audit_log,在向employees_test表中插入一条数据的时候,触发插入相关的数据到audit中

CREATE TRIGGER audit_log AFTER INSERT ON employees_test BEGIN INSERT INTO audit VALUES ( NEW.ID, NEW.NAME ); END 注意: 用 CREATE TRIGGER 语句构造触发器,用 BEFORE或AFTER 来指定在执行后面的SQL语句之前或之后来触发TRIGGER 触发器执行的内容写在 BEGIN与END 之间,并且要写分号 可以使用 NEW与OLD 关键字访问触发后或触发前的employ.

hmyqwe的博客 657

AI应用架构师:引领半导体良率AI预测的变革浪潮

在半导体行业这个技术密集、资本密集且竞争异常激烈的领域,良率是决定企业盈利能力的关键指标。每提升1%的良率可能意味着数亿美元的利润增长。然而,随着制程节点不断缩小至3nm、2nm甚至更先进水平,传统的良率管理方法已难以应对日益复杂的制造流程和指数级增长的数据量。本文将深入探讨AI应用架构师如何成为这场变革的核心驱动力,通过设计和实施先进的AI预测系统,将半导体良率预测从传统的"事后分析"转变为"事前预测"和"实时优化"。

AI大模型应用之禅 403

SQL实战41.构造一个触发器audit_log,在向employees表中插入一条数据的时候,触发插入相关的数据到audit中

题目 解答 知识补充 主要借鉴的是MySQL数据库触发器讲解与案例 在MySQL中,创建触发器语法如下: CREATE TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOR EACH ROW trigger_stmt 其中: trigger_name:标识触发器名称,用户自行指定; trigger_time:标识触发时机,取值为 BEFORE 或 AFTER; trigger_event:标识触发事件,取值为 INSERT、UP

m0_48005088的博客 1201

Python爬虫实战:巧用HEAD请求和Cookie令牌绕过沃尔玛反爬(附完整代码)

本文详细介绍了如何利用Python爬虫技术,通过HEAD请求和Cookie令牌绕过沃尔玛的反爬机制。文章深入解析了人机验证系统的运作原理,并提供了完整的工程化实现代码,包括令牌池设计、高并发架构和异常处理策略,帮助开发者高效采集电商数据。

weixin_29046035的博客 1007

京东前端200道面试题及参考答案(中)

前端优化是“提升用户体验、降低资源消耗”的核心手段,需围绕“用户感知的性能指标”(如页面加载速度、交互流畅度)展开,覆盖加载优化、渲染优化、代码优化、网络优化、缓存优化、性能监控六大维度,每个维度下有具体可落地的措施,同时需结合项目实际场景(如单页应用、电商首页)选择优化方案。分页组件需通过props接收“数据总量、当前页、每页条数”等基础信息,通过emit触发“页码切换、每页条数变化”的回调(供父组件请求对应页数据),同时定义默认值确保兼容性。核心Props与Emit设计<template>

大模型大数据攻城狮的专栏 590

牛客网数据库SQL实战41—— 构造一个触发器audit_log

牛客网数据库SQL实战41—— 构造一个触发器audit_log 题目描述 构造一个触发器audit_log,在向employees_test表中插入一条数据的时候,触发插入相关的数据到audit中。 CREATE TABLE employees_test( ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADD...

sunbocong的博客 697

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

牛客SQL41 构造一个触发器audit_log

文章目录1.什么是触发器?2.触发器的创建3.示例 1.什么是触发器? 触发器是一种与表操作有关的数据库对象,当触发器所在表上出现指定事件时,将调用该对象 ,即表的操作事件触发表上的触发器的执行。 2.触发器的创建 在MySQL中,创建触发器语法如下: 模板: CREATE TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOR EACH ROW trigger_stmt 其中: trigger_name:标识触发器名称,用户自

逾越的博客 4136

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

SQL41 构造一个触发器audit_log——触发器

描述 构造一个触发器audit_log,在向employees_test表中插入一条数据的时候,触发插入相关的数据到audit中。 CREATE TABLE employees_test( ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL ); CREATE TABLE audit( EMP_no INT NOT NULL, NAME TEXT NOT NULL

renxingzhadan的专栏 469

SQL41 构造一个触发器audit_log

SQL41 构造一个触发器audit_log

Robin_Pi的博客 243

41. 构造一个触发器audit_log

题目描述 构造一个触发器audit_log,在向employees_test表中插入一条数据的时候,触发插入相关的数据到audit中。 CREATE TABLE employees_test( ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL ); CR...

chenchenchenchenying的博客 302

牛客网刷题笔记-SQL41 构造一个触发器audit_log

SQL41 构造一个触发器audit_log 构造一个触发器audit_log,在向employees_test表中插入一条数据的时候,触发插入相关的数据到audit中。 CREATE TABLE employees_test( ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL ); CREATE TABLE audit( EMP_no INT NOT NULL,

qq_39211004的博客 220

Oracle - 行级触发器与语句级触发器,理解触发粒度

Oracle 触发器粒度指南:行级与语句级触发器的核心区别与应用场景 摘要 本文深入解析Oracle数据库中行级触发器与语句级触发器的关键差异: 触发机制: 行级触发器对DML影响的每一行数据单独触发(N次) 语句级触发器对整个DML语句只触发1次 核心区别: 行级触发器可访问:OLD/:NEW值,支持逐行验证和修改 语句级触发器无法获取单行数据,但性能更优 典型应用: 行级:数据校验、自动填充字段、细粒度审计 语句级:批量操作日志、跨表约束检查 性能考量: 行级触发器在大批量操作时可能显著影响性能 避免在

千淘万漉虽辛苦,吹尽狂沙始到金 1万+

【牛客SQL】SQL41 构造一个触发器audit_log

题目描述 题解 考察触发器 插入时可以用NEW和OLD指代employees_test插入时的数据 运行时间:52ms 超过20.69% 用Mysql提交的代码 占用内存:7376KB 超过15.65%用Mysql提交的代码 CREATE TRIGGER audit_log AFTER INSERT ON employees_test FOR EACH ROW BEGIN INSERT INTO audit VALUES (NEW.ID, NEW.NAME); END; ...

锥栗的博客 198

数据库SQL实践41:构造一个触发器audit_log

思路: 1.创建触发器使用语句:create trigger trigname; 2.指定触发器触发的事件在执行某操作之前还是之后,使用语句:before/after  [insert/update/add] on tablename 3.触发器触发的事件写在begin和end之间; 4.触发器中可以通过new获得触发事件之后对应的tablename的相关列的值,old获得触发事件之前的对...

weixin_43160613的博客 255

牛客SQL练习第41题

题目描述: 构造一个触发器audit_log,在向employees_test表中插入一条数据的时候,触发插入相关的数据到audit中。 CREATE TABLE employees_test( ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL ); CREATE TABLE audit( EMP_no INT NOT NULL, NAME TEXT NOT NUL

双人与余的博客 201

SQL实战笔记,第五篇

!41. 构造一个触发器audit_log,在向employees_test表中插入一条数据的时候,触发插入相关的数据到audit中。 CREATE TABLE employees_test( ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL ); CRE...

qq_38599326的博客 252

MySQL--窗口函数 触发器

窗口函数 <窗口函数> OVER ([PARTITION BY <列清单>] ORDER BY <排序用列清单> ) 排名函数:row_number(),rank(),dense_rank() 聚合函数:max(),min(),count(),sum(),avg(),median() SELECT * FROM winsales # row_number 同薪不同名,相当于行号,例如3000、2000、2000、1000排名后为1、2、3、4 SELECT sa

weixin_48378125的博客 273
上一篇: SQL练习39:针对上面的salaries表emp_no字段创建索引idx_emp_no,查询emp_no为10005
下一篇: SQL练习42:删除emp_no重复的记录,只保留最小的id对应的记录。
Dream丶Killer
Dream丶Killer 优质创作者: python技术领域 优质创作者: python技术领域
博客等级 码龄8年 7万+粉丝 187原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Dream丶Killer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值