黑马程序员-浅谈存储过程和触发器

《黑马程序员MySQL数据库入门到精通,从mysql安装到mysql高级、mysql优化》学习笔记总目录 MySQL数据库入门到精通,从mysql安装到mysql高级、mysql优化》所有知识点的笔记进行总结分类。学习时总结的目录笔记以及。和实训,将在后续更新。第一章:MySQL概述。 阅读详情
---------------------- Windows Phone 7手机开发、 .Net培训、期待与您交流! ----------------------

 

什么是存储过程呢?官方是这样定义的,存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。

1、创建存储过程语句如下:

 

2、调用存储过程 

exec sp_name [参数名] 

3、删除存储过程 

drop proceduresp_name

其实,说白了,存储过程就是一类特殊的函数,只要我们给它合适的参数就可以直接调用,跟调用API函数差不多,唯一不同的就是API函数大部分是别人写的,而存储过程我们一般都是自己写。

注意:不能在一个存储过程中删除另一个存储过程,只能调用另一个存储过程。

那么什么是触发器呢?严格意思上说,触发器就是存储过程,只不过它的执行不是由程序调用,也不是手工启动,而是由事件来触发。

创建语句如下

这时有人不解了,什么叫由事件来触发呢?其实这和botton按钮的点击事件一样,只不过触发器是由Insert、Update、Delete这些动作触发,而botton的点击事件是通过点击的动作来触发的。

那么存储过程有哪些优点呢?

1、速度快。

在运行存储过程前,数据库已对其进行了语法和句法分析,并给出了优化执行方案。也就是说,存储过程在调用前就已经编译好了,所以存储过程能以极快的速度执行。

2、存储过程可以重复使用,可减少数据库开发人员的工作量 。

3. 保证数据的安全性。 

通过存储过程可以使没有权限的用户在控制之下间接地存取数据库,从而保证数据的安全。 

4、保证数据的完整性。

通过存储过程可以使相关的动作在一起发生,从而可以维护数据库的完整性。

既然存储过程有如此多的好处,那么我们做项目的时候是不是用的越多越好呢?答案肯定是NO。万事都有个度,存储过程也一样。如果在一个程序系统中大量的使用存储过程,那么必然会导致它的数据结构相当复杂,这样维护该系统将会是相当困难的一件事。

让我们合理使用触发器和存储过程,尽情享受他们带给我们的方便。

---------------------- Windows Phone 7手机开发、 .Net培训、期待与您交流! ----------------------
数据库实验报告-存储过程、触发器 一、实验目的 1.了解存储过程的概念、优点 2.熟练掌握创建存储过程的方法 3.熟练掌握存储过程的调用方法 4.了解触发器的概念、优点 5.掌握触发器的方法和步骤 6.掌握触发器的使用 立即下载

相关推荐

数据库存储过程和触发器实验

有关于数据库存储过程和触发器的实验,大家可以看看....

浅谈存储过程和触发器

什么是存储过程呢?官方是这样定义的,存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。 1、创建存储过程语句如下: createprocedure 存储过程名 @[参数名] [类型],@[参数名][类型] as begin ...

梦想起飞的地方,必须用心去经营 2076

触发器与存储过程实验

一、实验目的 使学生加深对触发器和存储过程的创建和使用。 二、实验内容和要求   掌握触发器的使用。   掌握存储过程的创建、修改和删除;掌握存储过程的执行。 具体内容如下: (1)触发器的使用   在数据表“学生”中创建update触发器,级联更新“选课”表中相应的记录信息。   利用Delete表,将“学生”表中被删除的记录存储到“学生备份”表中,以供日后的数据查询和分析。 存储过程的使用   在Student数据库中,建立一个存储过程,要求统计计算机系学生的人数,并将人数返回给用户。   在Student数据库中,建立一个存储过程,要求   统计成绩大于90分学生的人数。   统计成绩大于等于80分并且小于90分学生的人数,并将人数返回给用户。

数据库实验三 存储过程与触发器

一、实验目的 (1)了解存储过程的概念、优点 (2)熟练掌握创建存储过程的方法 (3)熟练掌握存储过程的调用方法 (4)了解触发器的概念、优点 (5)掌握触发器的方法和步骤 (6)掌握触发器的使用 二、实验环境 PLSQL Developer 12 Oracle Database 11 home 三、实验步骤、出现的问题及解决方案 实验步骤: 1、建立存储过程完成图书管理系统中的借书功能,并调用该...

1万+

STM32基于软件模拟IIC进行AHT21B温湿度采集

通过学习软件IIC来进行实操AHT21B采集温湿度。

Liu-FE的博客 3700

NoC架构深度解析:从拓扑结构到流量控制的全面指南

本文深入解析了片上网络(NoC)架构,从总线架构的瓶颈出发,阐述了NoC作为芯片内部“交通网”的核心优势。文章详细探讨了主流拓扑结构(如Mesh、Torus、Ring)的选型权衡,并系统介绍了数据包格式、路由算法、路由器流水线、流量控制机制以及网络接口(NI)设计,为理解现代多核SoC的通信基石提供了全面指南。

gg901的博客 1042

MYSQL数据库实验(存储过程与触发器)

个人配置说明:5.7.24 MySQL Community Server (GPL),环境CentOS 7 1.MYSQL 不支持语句触发(for each statement),只支持行触发(for each row,新旧数据通过关键字new和old区别) 实验: 数据库存储和触发器实验 一、实验目的 理解,实现并逐渐熟悉存储过程的使用...

weixin_30799995的博客 3310

OpenClaw(原Clawdbot/Moltbot)本地部署快速指南

支持Telegram、Slack、Discord、iMessage等多平台接入,通过配置文件或环境变量填写对应平台的Token,配置后执行。支持对接OpenAI、Anthropic、阿里云百炼等云端模型,也可搭配Ollama使用本地模型。默认仅允许已配对用户交互,群聊场景建议开启Docker沙箱模式,在配置文件设置。执行后跟随指引确认安全说明,进入QuickStart模式,默认网关端口为。可查看已加载模型,通过绑定的通讯通道发送测试指令,响应正常即部署完成。,限制非主会话操作权限,提升安全性。

wukangjupingbb的博客 8479

数据库 触发器实验报告

通过本次实验,我们学习了触发器的概念和使用方法,掌握了创建和使用触发器实现自动统计和更新数据的功能。- SC表插入触发器:当向SC表中插入一条记录时,触发器会自动计算每个学生的平均分和每门课程的平均分,并更新到student_avg, course_avg表中。- SC表更新触发器:当更新SC表中的分数时,触发器会自动更新学生平均分和课程平均分到student_avg, course_avg表中。表结构:Student(学号,姓名),Course(课程号,课程名,学分),SC(学号,课程号,分数)

weixin_62907843的博客 3051

ros2笔记-4.6使用launch启动脚本

ros2 4.6 使用launch启动多节点

bohu83的博客 1313

高光谱图像处理和分析软件(包含雷尼绍Renishaw wdf 文件导入解析功能)

是一款基于微软windows操作系统的多传感器成像工具,用于处理和分析高光谱图像。它是一个模块化的系统,由一个基本的引擎,一个图形用户界面,一个化学计量工具箱和可选的用户提供的模块组成。它支持最重要的光谱成像技术,如UV/Vis、红外、拉曼、太赫兹、光发射/吸收和质谱。除此之外,还允许用户将高光谱图像与物理属性图和传统高分辨率彩色照片合并在一起 链接:https://pan.baidu.com/s/1ruQ5YSh5_ZS9wx_V3Q5Oow 提取码:qdx0 ...

业余程序员小徐的博客 8073

触发器、存储过程的建立与使用—实验报告

一、实验目的  了解触发器和存储过程的概念和作用,掌握创建和使用触发器、存储过程的方法,为后继学习和开发程序作准备。 二、实验属性     1、了解触发器、存储过程的作用。     2、了解并掌握触发器、存储过程的创建及使用。 三、实验仪器设备及器材     1、预习教材第五章,熟悉触发器、存储过程创建的语句。     2、熟悉SQL SERVER20

wisdom_bo的博客 9004

RK3568驱动 SPI主/从 配置

RK3568 SPI 配置指南 内核配置:启用用户空间驱动(主)和从模式协议支持。 主模式:设备树设置status="okay"、max-freq及引脚复用,子节点compatible="rockchip,spidev"。 从模式:需添加spi-slave属性,子节点命名以slave@X开头。 编译烧写:修改设备树后编译内核或全量镜像,验证/dev/spidevX.Y节点。 测试:使用spidev_test工具,主模式可环回测试,从模式需与主设备通信。 (关键:从模式强制spi-slave和命名规则,频率匹

文石_2009的博客 1149

黑马程序员mysql基础篇和进阶篇笔记

特别注意innoDB和MyISAM思考题1思考题2回表查询,先走二级查询,再走聚集查询查看状态如何修改语法例子视图检查选项。

m0_63695860的博客 986

RT-DETR模型应用过程中的报错处理及疑问解答,涉及环境搭建、模型训练、模块改进、论文写作

本文记录了RT-DETR模型的这一系列过程中可能发生的问题,以及大家非常关心的问题,这里统一做了一个记录和解答。

Limiiiing的博客 1768

UG NX二次开发(C#)--详细讲述编程模板NXOpen_CS_Wizard的代码意义,帮你轻松进入NXOpen(C#)二次开发

有几个读者私信问我,在看了“NX1957在VS2019上二次开发的环境配置”后,能完成了UG NX二次开发(C#)模板的配置,也能根据模板创建工程,但是对工程文件.cs不甚理解;并且,在UG Styler新建完成后,其也有一个dlx文件和.cs文件,也不清楚怎么使用。本文先对UG NX二次开发(C#)模板文件进行讲解,在下一个博客中,讲解Styler新建后的模板文件。以上就是对编程模板NXOpen_CS_Wizard(c#)的讲解,其实只要明白了逻辑关系,编程实现只是时间问题,祝你好运。

GimiGimmy 1787

day29 | 黑马程序员Java全程笔记 | 第二阶段MySQL高级事务-索引-视图-触发器-存储过程

目录 01.反馈 02.回顾 03.并发访问MySQL-问题概述 并发访问的问题 04.并发访问MySQL-问题演示 05.并发访问MySQL-read-committed解决脏读问题 06.并发访问MySQL-repeatable read解决不可重复读问题 07.并发访问MySQL-serializable解决所有问题 08.索引概述和作用 09.索引优劣势 优势 劣势 10.存储引擎和索引数据结构 11.索引结构-BTree结构 BTREE 结构 12.B+Tree

weixin_61049006的博客 6144

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

【数据库(MySQL)基础】以MySQL为例的视图、存储过程与触发器

以MySQL为例的视图、存储过程与触发器

passer__jw767的博客 2112

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

黑马程序员——创建触发器

---------------------- Windows Phone 7手机开发、ASP.Net培训、期待与您交流! ---------------------- 触发器是一种特殊类型的存储过程,它不同于前面介绍过的一般的存储过程。一般的存储过程通过存储过程名称被直接调用,而触发器主要是通过事件进行触发而被执行。触发器是一个功能强大的工具,在表中数据发生变化时自动强制执行。触发器可以用于SQ

.net技术爱好者 538

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

[黑马程序员] 进阶篇-存储过程

人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的。

weixin_38805083的博客 247

MySQL视图/存储过程/存储函数/触发器-详解-黑马程序员课程笔记

​ 存储过程是事先经过编译并存储在数据库中的一段 SQL 语句的集合,调用存储过程可以简化应用开发 人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的。​ 存储过程思想上很简单,就是数据库 SQL 语言层面的代码封装与重用。​ 用户定义变量 是用户根据需要自己定义的变量,用户变量不用提前声明,在用的时候直接用 “@变量 名” 使用就可以。其作用域为当前连接。赋值。

qq_62357662的博客 323

MySQL——视图/存储过程/触发器:(级联、本地)、视图用、存储过程(变量(系统、用户定义、局部变量)、if、case、while、repeat、loop、游标、条件处理程序、存储函数)触发器

​ 视图(View)是一种虚拟存在的表。视图中的数据并不在数据库中实际存在,行和列数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的。​ 通俗的讲,视图只保存了查询的SQL逻辑,不保存查询结果。所以我们在创建视图的时候,主要的工作就落在创建这条SQL查询语句上。​存储过程是事先经过编译并存储在数据库中的一段 SQL 语句的集合,调用存储过程可以简化应用开发人员的很多工作减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的。

放下华子我只抽RuiKe5的博客 3438

MySQL 学习笔记(黑马程序员)

多表查询。

A2294249395的博客 2032

【MySQL数据库笔记 - 进阶篇】(四)视图/存储过程/触发器

📣专栏定位:这个专栏我将会整理 B 站黑马程序员的 MySQL 入门课程的笔记,大家可以根据笔记辅助听课~

Newin2020的博客 2667

黑马程序员 SqlServer触发器

---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! -------------------------------------------- 触发器的分类 1.DML触发器 (1)after触发器,在执行insert,update,delete语句操作后,执行after触发器,指定after与指定for相同,

yuanlianxi03的专栏 580

黑马程序员-Oracle 触发器的一些知识

------- android培训、java培训、期待与您交流! ---------- 触发器:是特定时间出现的时候,自动执行的代码块, 类似于存储过程,但用户不能直接调用她们. 功能: 1.允许/限制对表的修改 2.自动生成派生列,比如自增字段 3.强制数据一致性 4.提供审计和日志记录 5.防止无效的事务处理 6.启用复杂的业务逻辑

u013240330的专栏 405
上一篇: 黑马程序员-C#中ToString格式大全
下一篇: 黑马程序员-笑谈设计模式
步飞烟
博客等级 码龄15年 0粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值