MySQL 触发器 存储过程 一点小用

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

      同事离职,又一个一个烂摊子要收拾。这里修修,那里补补都没有精力来写点东西。

      明天回家,上午整理好文档。下午决定抽点时间,把最近的东西尽量理一理。很多灵感都已经遗忘。我们总在不断面对,所以我们不断遗忘。【syslog、mysql优化、触发器、存储过程、文件读写……】疯狂的Google着这些关键词,以求在对项目整体改动最小、影响最小情况下完成这些工作。

      过程很痛苦,今天这篇算是痛定思痛吧!

      在技术可行的情况下,优雅的设计永远很重要,否则就不断痛苦吧。(思考,成熟的思考一定在行动之前)

      言归正传:触发器、存储过程可以理解一些预先编写好的函数,存储在数据库服务器上。触发器关联到具体表,对一张数据表进行插入、更新、删除这三类操作前、操作后都可以做一些事情,比如:删除某张表一条记录后,可以同时删除一张相关表中的对应记录。而这些工作都会由数据库自动完成。

      一个例子:

 

 说明:上面例子实现功能,向表tbl_1中插入一条数据之后,判断tbl_2中有没有此记录,如果没有插入一条新的记录到tbl_2,如果有对应name则更新一下tbl_2的record字段。(触发器语法解释可以Google其他资料)

 

       存储过程,一段编写好的SQL语句可以封装成函数,直接调用:

       一个例子:

说明:上面例子实现一个数据备份长文件功能,pro_test()函数三个参数:e_table表名称,e_filename 文件名称,e_condition 条件

 具体语法可以Google。

MySQL触发器存储过程 MySQL 中,触发器(Trigger)和存储过程(Stored Procedure)都是重要的数据库编程工具,它们都用于执行自动化的数据库操作,但它们的用途和触发时机有所不同MySQL 触发器(Trigger)是一种特殊的存储过程,它在对某个表执行 INSERT、UPDATE 或 DELETE 操作时自动触发并执行。触发器的作用通常是用于数据的验证、审计、日志记录、或自动更新等。 阅读详情

相关推荐

8. MySQL 存储过程存储函数、触发器

SHOW CREATE 语句能查询存储过程的集体定义。基本语法SHOW CREATE PROCEDURE 存储过程名;实例使用 SHOW CREATE 查询名为 showstuscore 的存储过程的状态。查询结果显示了存储过程的定义和字符集信息等。基本语法DECLARE 关键字是用来声明变量的;var_name参数是变量的名称,这里可以同时定义多个变量;type参数用来指定变量的类型;

普罗米修斯的博客 2139

关于mysql触发器存储过程一点儿小见解

很多程序员在出去面试的时候都会存在这样一个问题,就是笔试题中对于sql语句的考察,很多关键字的写法忘记了甚至是完全没有用过,但是如果你能百度一下或者看一下之前写的代码又会瞬间想起来,这其实是一个比较尴尬的问题,仅仅的因为一个关键字就能否定你的sql能力或者代码能力吗?当然这是很片面的。但是sql的关键字又实在是太多,一个一个整理未免太多复杂,所以我这里不过多的介绍了,碰到了,自己查下资料即可。今天

xx666zz的博客 301

存储过程触发器的实验报告

实验目的:进一步了解关于存储过程触发器的定义及实现 实验名称:存储过程触发器的定义以及验证 实验内容:完成以下关于存储过程触发器的定义以及验证。 1.[例7.50] 输入某个同学的学号,统计该同学的平均分。 CREATE PROCEDURE proStudentByNo1(sNo char(7)) BEGIN SELECT a.studentNo, student...

weixin_43653670的博客 6146

MySQL存储过程存储函数、触发器

数据库存储过程触发器

低调做人,低调编码,神码都是浮云 2508

mysql触发器存储过程

触发器(trigger)是与表事件相关的特殊存储过程,它的执行不由程序调用,也非手工启动,而是由事件触发、激活从而实现执行。简单来说,触发器就是事先为某张表绑定一段代码,当表中的某些内容发生增、删、改时,系统会自动触发代码并执行。存储过程: 存储过程则需要主动调用其名字执行。注意:触发器由事件触发执行,存储过程主动调用。 :触发器名称 :触发执行事件:触发事件:触发器要执行的哪张表 :触发频率为每一行触发一次 :触发器的程序体,可以是一条SQL语句或者是用BEGIN和END包含的多条语句在mysql中的语法

m0_46467017的博客 2210

MySQL存储过程触发器

本文系统介绍了MySQL存储过程的创建与使用,包括变量定义、条件判断、循环控制、游标操作等核心知识。详细讲解了存储过程的优缺点分析,以及存储函数与触发器的区别与应用场景。通过具体示例演示了如何实现参数传递、条件处理、日志记录等功能,并深入解析了行级触发器的实现机制。文章还总结了存储过程在实际开发中的常见问题与解决方案,为数据库编程提供了全面指导。

weixin_41965831的博客 1340

mysql存储过程&触发器

执行语句中如果要引用更新记录中的字段,对于INSERT语句,只有NEW是合法的,表示当前已插入的记录;”符号作为语句的结束符号,可是在创建触发器时,需要用到“;对于具有相同触发程序动作时间和事件的给定表,不能有两个触发器(比如after insert插入之后有一个触发器那么就不能再有触发器是after的了,但是before insert是可以的)。参数BEFORE和AFTER指定了触发器执行的时间,前者在触发器事件之前执行触发器语句,后者在触发器事件之后执行触发器语句;(2,'小红',102,'F'),

changfan6000000的博客 1435

MySQL进阶】存储过程触发器

我们在开头的时候留下了这么一些问题本节可以解决的问题(面试题)存储过程的作用是什么?如何创建一个存储过程MySQL中的变量都有哪几种?如何定义一个变量?MySQL中使用变量是否需要提前声明?MySQL中的参数分为哪几种?用过游标吗?游标的作用是什么?了解条件处理程序吗?介绍一下如何使用?存储函数与存储过程的区别是什么?如何查看数据库中创建的存储过程?什么是触发器MySQL触发器分为几种类型?行级触发器与语句级触器的区别是什么?说一下了解的触发器使用场景有哪些?

2301_80224556的博客 1334

mysql触发器存储过程

mysql触发器是与表关联的数据库存储程序,用于响应关联表中发生的事件(例如插入,更新或删除)而自动调用。即当触发器所在表上出现指定事件时,将调用该对象,也就是表的操作事件触发表上的触发器的执行。 trigger_name:触发器的名字,可以自己设置trigger_time:触发时机,也就是在多长时间内会发生这件事情,一般取值为befor和aftertrigger_event:触发事件,当到这里的时候希望他会发生一件什么事情,一般取值为insert(增加)、update(修改)、delete(删除)。t

lml_0916的博客 2341

MySQL存储过程存储函数,触发器

MySQL存储过程是一种预先编写并存储在数据库中的可重复使用的SQL代码块,它能够通过一个名称被调用执行。存储过程可以包含复杂的逻辑操作,如条件判断、循环、变量操作等,允许将一系列SQL语句组合成一个单元,以便在需要时高效执行。换句话说,就是将多个 SQL 语句组合成一个只需要使用命令“CALL xx”就能执行的集合,该集合就称为存储过程(stored procedure )。“存储”( stored)表示保存,“过程”(procedure)表示步骤。

2301_80224556的博客 1437

MySQL存储过程触发器

存储过程是事先经过编译并存储在数据库中的一段 SQL 语句的集合,调用存储过程可以简化应用开发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的

m0_72532428的博客 1403

MySQL实验五:触发器存储过程操作实验

实验五:触发器存储过程操作实验 一、实验目的 1、掌握存储过程创建和调用的方法; 2、掌握MySQL中程序片段的组成; 3、掌握触发器的使用方法。 二、实验环境 硬件:PC机 软件:Linux操作系统、MySQL Server 6.0 三、实验内容和步骤 1、存储过程: (1)创建存储过程,使用student表中的学生人数来初始化一个局部变量,并调用这个存储过程; (2)创建存储过程,比较两学生的年龄,若前者比后者大就输出0,否则输出1。 调用时发现报错,原因是源代码中定义的Sno2学号长度不够,

www2727的博客 7038

mysql触发器中调用存储过程_mysql 触发器中调用存储过程

想要在MYSQL触发器中调用存储过程,但是IDE提示:0A000 Not allowed to return a result set from a trigger触发器代码如下:DELIMITER $$CREATE TRIGGER tri_ContactCompany_Insert AFTER INSERTON contactcompany FOR EACH ROW# 创建时间:2019年6月...

weixin_29315091的博客 2641

mysql触发器存储过程

一、异同点       触发器存储过程都是一组mysql语句集,都可以实现一些比较复杂的业务逻辑,可以直接在数据库中,编写业务逻辑,对不同的表进行操作,执行效率较高,不同的是存储过程需要主动调用,如下:#给参数赋值set @b=5;#调用存储过程,并传入参数 call proc_adder(2,@b,@s);#获取结果 select @s as sum;而触发器,的执行是在,我们对数据库进行操作...

雨夜青草的博客 3273

mysql中的存储过程触发器

mysql存储过程触发器的基础功能和用法

weixin_51473175的博客 1222

Mysql 触发器存储过程

触发器(trigger)是一个特殊的。

2301_80792972的博客 1070

MySQL存储过程触发器实战解析

mysql是一种开源免费的数据库管理系统,由Oracle公司提供。因其系统轻量、功能强大,受到很多企业青睐,目前应用也非常广泛。

sinat_30844883的博客 1200

MySQL触发器存储过程实战指南

本文介绍了MySQL触发器(Trigger)和存储过程(Stored Procedure)的概念、语法和实际应用。触发器是自动执行的数据库对象,在表发生INSERT、UPDATE或DELETE操作时触发,常用于日志记录、数据校验等场景;存储过程则是封装SQL语句的可调用对象,适用于批量处理和复杂业务逻辑。文章详细讲解了二者的语法结构,提供了创建用户日志、库存管理等实用示例,并对比了它们的区别。此外,还给出了转账业务等实战案例,分享了调试技巧,并列出注意事项如避免触发器循环调用、存储过程事务控制等。

lly1591122536的博客 1393
上一篇: SysLog 学习的一点思路
下一篇: JesperReport应用系列之入门篇1
GoodDao
博客等级 码龄19年 53粉丝 151原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值