其实很容易的SQL SERVER存储过程和触发器(10分钟入门教程)

29、SQL Server 函数、存储过程和触发器的实现 本文详细介绍了 SQL Server 中函数、存储过程和触发器的实现方法。内容涵盖使用 XQuery 处理 XML 数据、函数的创建与分类(标量函数和表值函数)、确定性与非确定性函数的区别、存储过程的创建与权限管理,以及触发器的基本概念。通过实际案例分析了存储过程在提升数据库性能中的作用,并提供了代码示例和最佳实践建议。适合数据库开发人员和管理员参考学习。 阅读详情

(我说是是10分钟入门,事实上对我来说,真的就是老师讲的那十分钟,并没有过分夸张,然后我就知道了存储过程和触发器应该怎么写了,当然只是入门而已,但我恬恬缺这十分钟,如果没有人讲,只是自己看书的话,至少要好几天的时间了....)

 一直以来,对SQL SERVER的存储过程和触发器都基本没有用到,只是偶尔从网上找几个简单的函数PASTE到我的SQL中用。自己写总是感觉缺点什么,前几天单位的培训讲了一天的SQL SERVER,看了老师写的存储过程,才发现原来存储过程也不是很难。

事实上,也是我一直没有坚持研究的原因,但是不能否认的是,有人讲和自己学,这其中的效率实在是无法相比。尤其是对于我们这种已经编过很多年的程序,但是却又静不下心来看书学习的人来说,很多东西其实就是需要有人在前面带那么一下,把那层纸捅破了,给大家一个概貌性的东西,余下的,就只是个时间和熟练性的问题了。

 

我认为的存储过程的纸就在这里:

1、变量的声明和使用

  declare @var as varchar(50)

  set var='abcd'

2、IF循环

if isnull(@prjid,0)=0
 begin
  print '没有找到prjid!!!'
  return
 end
else

  begin

   --必须在这里写一些代码,否则会报错。

  end

3、游标的使用

  1. declare curJD cursor for 
  2.     select id,fzbh from _tzk
  3. open curJD
  4. fetch next from curJD into @jdID,@paperno
  5. while @@FETCH_STATUS=0
  6. BEGIN
  7.   --这里是一些处理代码
  8.   fetch next from curJD into @jdID,@paperno
  9. END
  10. close curJD
  11. deallocate curJD

4、触发器的使用

关键在于inserted表和deleted表的使用

  1. ALTER   TRIGGER  RoleInsert  ON [dbo].[roleName] 
  2. AFTER  INSERT
  3. AS
  4. declare @RoleID as bigint
  5. set @RoleID=(select roleid from inserted)
  6. insert into rolerule (roleid,menuid,pw) 
  7. select @roleid,menuid,0 from menus where menus.menuid not in 
  8. (select menuid from rolerule where roleid=@roleid) 
  9. update rolerule set pw=1 where menuid in (select menuid from menus where always=1)
  10.     and roleid in (select roleid from inserted)

然后有了这几个例子,其它的就是熟练的一个过程了

sql Server 2005 存储过程视频 sql Server 2005 存储过程视频,对于初学者很有帮助的 立即下载

相关推荐

SQL SERVER 触发器视频讲解

讲述触发器创建,编辑,修改及功能,使用的时候很容易理解

【SQL server速成之路】触发器

触发器不需要调用,当对一个表的特别事件出现时,它就会被激活。触发器是一类特殊的存储过程,用于保护表中的数据,当有操作影响到触发器保护的数据时,触发器将自动执行。 在SQL Server 2012中,按照触发事件的不同可以将触发器分为两大类:DML触发器和DDL触发器。

m0_61684063的博客 2497

SQL触发器使用实例

SQL触发器使用实例 --创建触发器,示例1 /* 创建触发器[T_INSERT_卷烟库存表],这个触发器较简单。 说明: 每当[卷烟库存表]发生 INSERT 动作,则引发该触发器。 触发器功能: 强制执行业务规则,保证插入的数据中,库存金额 = 库存数量 * 库存单价。 注意: [INSERTED]、[DELETED]为系统表,不可创建、修改、删除,但可以调用。 重要: 这两个系统表的结构同插入数据的表的结构。 */ IF EXISTS (SELECT NAME FROM SYSOBJECTS WHERE XTYPE = 'TR' AND NAME = 'T_INSERT_卷烟库存表') DROP TRIGGER T_INSERT_卷烟库存表 GO CREATE TRIGGER T_INSERT_卷烟库存表 ON 卷烟库存表 FOR INSERT AS --提交事务处理 BEGIN TRANSACTION --强制执行下列语句,保证业务规则 UPDATE 卷烟库存表 SET 库存金额 = 库存数量 * 库存单价 WHERE 卷烟品牌 IN (SELECT 卷烟品牌 from INSERTED) COMMIT TRANSACTION GO

mysql中的触发器

触发器是与表有关的数据库对象,可以在insert/update/delete之前或之后,触发并执行触发器中定义的SQL语句。触发器的这种特性可以协助应用在数据库端确保数据的完整性、日志记录、数据校验等操作。使用别名NEW和OLD来引用触发器中发生变化的记录内容,这与其他的数据库是相似的。现在触发器还只支持行级触发,不支持语句级触发。account_log日志表。...

lazy_bones__的博客 593

记录rk3588 在Linux 6.1内核版本声卡 bug。

rk3588 Audio bug

Yongheng6的博客 855

基于STM32环境温湿度监测系统设计

基于STM32环境温湿度监测系统设计1. 实验目的2. 任务和要求3. proteus仿真图4. 实验代码 1. 实验目的 (1) 掌握使用 KEIL MDK5 进行软件开发的具体流程; (2) 掌握硬件电路的设计方法; (3) 掌握 STM32 微控制器的程序设计及代码编写方法。 2. 任务和要求 (1)在 STM32F103 平台下,通过温度传感器 DS18B20 和湿度传感器 DHT11 实现环境温湿度信息的采集; (2)将温度传感器和湿度传感器所采集的数据在 LCD 液晶屏幕上显示出来,超

唯一的博客 2万+

SQL Server触发器使用指南:从基础到高级实战

触发器(Trigger)是SQL Server中一种特殊的存储过程,用于在数据表发生特定事件(如INSERT、UPDATE、DELETE)时自动执行逻辑。合理使用触发器可实现数据审计、级联操作等复杂业务需求,但误用可能导致性能下降甚至数据混乱。表:存储新数据(INSERT/UPDATE后的值)表:存储旧数据(DELETE/UPDATE前的值),全面解析触发器的正确使用方式与避坑法则。:避免在触发器中执行耗时操作(如全表扫描):为触发器中的JOIN条件字段创建索引。辑无法通过其他方式实现时使用触发器。

xiaoyu❅的博客 2932

OBS技术深度剖析:从开源直播工具到专业制作引擎的进化之路

本文深入剖析了开源直播软件OBS的技术架构与发展历程。从2012年诞生至今,OBS已成长为直播领域的事实标准,其成功源于模块化设计和开源协作模式。文章详细解析了OBS的核心技术:1) 分层架构与插件系统,2) GPU加速的渲染管线,3) 智能音频处理,4) 多平台编码优化。同时探讨了虚拟摄像头、浏览器源等高级功能的实现原理,并提供了性能优化方案和硬件配置建议。随着AI、WebRTC等新技术发展,OBS将持续引领实时内容创作工具的创新,为开发者和创作者提供更强大的技术支持。

程序猿老樊的博客 324

Mysql数据库 13.SQL语言 触发器

new与old关键字用来在触发器中获取出发这个触发器的数据库操纵语言DML的数据new:在触发器中获取insert操作添加的数据,update操作修改后的记录old:在触发器中用于获取delete操作删除前的数据,update操作修改前的数据。

m0_73983707的博客 3387

微纳加工技术中的自对准硅化物(Silicide)工艺:关键步骤与应用场景解析

本文深入解析了微纳加工技术中的自对准硅化物(Silicide)工艺,详细介绍了其关键步骤与应用场景。从表面清洁、金属沉积到两步退火法,全面拆解工艺全流程,并探讨了不同技术节点下的工艺演进。文章还提供了实际应用中的问题排查方法和新兴技术对Silicide工艺的挑战,为芯片制造领域的工程师提供了实用参考。

weixin_30613727的博客 429

Coze智能体开发:搭建一个解析 PDF 文件的工作流

大模型本身并不具备文件读取和解析的能力,无法直接处理文件字节流。对于支持工具调用(Function calling)的模型,扣子提供插件功能来帮助大模型调用外部工具 API,拓展大模型的能力边界。扣子插件商店提供海量官方插件和第三方插件,例如链接读取插件可以将链接对应的文件内容解析为纯文本传递给大模型。

王国平的博客 2812

SQL server使用触发器的步骤,方法,技巧

本文主要分为两部分 第一部分是确定触发器的类型,写出一个触发器的基本框架,只要能默写这个框架就能轻松的写出触发器 第二部分是触发后的操作,触发后的操作可以是INSERT、DELETE、UPDATE,执行的步骤一般都是先从FROM中取出数据,然后投影到SELECT中,最后完成INSERT、UPDATE操作等等

web教程 4162

LabVIEW实现TCP通信

在本节中,我们将简要探讨TCP通信的基础知识,并以工业物联网平台TLINK中的云端设备数据发布设计为例,详细阐述在互联网环境下TCP客户端应用程序设计的基本方法。

不脱发的程序猿 1959

【SQL server速成之路】存储过程

🎉个人主页:这个昵称我想了20分钟 ✨往期专栏:【速成之路】jQuery 🎖️专栏:【速成之路】SQL server 🔓往期回顾: 【SQL server速成之路】数据库基础 【SQL server速成之路】数据库和表(一) 【SQL server速成之路】数据库和表(二) 【SQL server速成之路】数据库的查询 【SQL server速成之路】数据库的视图和游标 【SQL server速成之路】T-SQL语言(一) 【SQL server速成之路】T-SQL语言(二) 【SQL server.

m0_61684063的博客 1472

大数据分析案例-基于随机森林算法构建二手房价格预测模型

通过应用随机森林算法,我们希望建立一个能够有效预测二手房价格的模型。这个模型可以基于各种因素,如区域位置、房屋属性、市场供需等,来预测未来某一时间点的房价。通过提高预测准确性,我们可以更好地把握房地产市场动态,为决策提供更有价值的参考。揭示影响二手房价格的因素及其影响方式:通过分析随机森林算法生成的模型,我们可以进一步了解哪些因素对二手房价格有重要影响,以及这些因素如何影响房价。这有助于我们深入理解房地产市场的运行规律,为制定更为有效的市场策略提供依据。

m0_64336780的博客 1万+

LVGL 组件对齐方式说明

本文说明 LVGL(以 v8 为例)中常用的 lv_align_t对齐选项的含义与用法,对应界面设计工具里下拉列表中的以及等命名。

摸鱼专家 130

【MySQL/SQL Server触发器对比】:5分钟搞懂跨平台实现差异

5分钟掌握MySQL与SQL Server触发器差异,解决跨平台开发难题。提供SQL触发器示例及适用场景、语法对比与执行机制分析,助你精准实现数据自动化。核心方法清晰易懂,值得收藏。

VarLens的博客 813

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

mysql 触发器 sql日志_sql update 触发器 可获得被update的行的信息

SQL Server 2005 学习笔记之触发器简介[转]触发器实际上就是一种特殊类型的存储过程,其特殊性表现在:它是在执行某些特定的T-SQL语句时自动的。11.1 触发器简介触发器实际上就是一种特殊类型的存储过程,它是在执行某些特定的T-SQL语句时自动执行的一种存储过程。在SQL Server 2005中,根据SQL语句的不同,把触发器分为两...文章老朱教授2017-11-26985浏览...

weixin_29366307的博客 605

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

SQL Server触发器实战避坑指南:After与Instead Of选型、事务控制与审计系统设计

触发器是SQL Server中实现数据一致性、审计日志和业务拦截的关键机制,其核心在于理解DML与DDL触发器的执行时序、事务上下文(如@@TRANCOUNT)及隐式事务行为。After触发器在约束校验后执行,适用于日志记录与通知;Instead Of触发器则在约束前接管,是唯一能绕过CHECK、DEFAULT、外键级联的‘数据越狱’手段。二者选型错误将直接导致超卖、日志丢失或递归崩溃。结合保存点(Savepoint)、集合操作替代游标、EVENTDATA()解析等工程实践,可构建高可用审计系统。本文聚焦生

clugcpne10995的博客 2062

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

MSSQL server触发器中新建作业(job),作业中5分钟后执行update column

/*新建job的sql语句可由sql server 对象资源管理器 Sql server代理中的作业->新建作业生成模板*/ /*sql server agent 服务要打开*/ create trigger tgr_cardinfo_update_reguserid /*触发器名称*/ on [Kale].[dbo].[CardInfo]     for update as

1956

两个sql server存储过程,一个触发器

1.  备份日志, 避免日志过快增长 no_log   /  trancate_onlyBACKUP LOG realnew_DATA WITH NO_LOGDBCC SHRINKDATABASE(realnew_DATA ,TRUNCATEONLY)BACKUP LOG realnew_DATA WITH Truncate_ONLYBACKUP LOG sjyh WITH NO_LOGDBCC

975

sql server小型案例-自动生成销售单号的触发器

sql server实现自动生成销售单号的触发器 1.有关系统 最近在做信息系统课程设计的小项目,我们团队所做的是一个简单的自动贩卖机销售管理系统,其中我负责的部分是销售管理,其中需要实现的一个功能是当贩卖机商品信息表(贩卖机卡槽编号,数量)有商品售出时,自动生成一条销售记录到销售信息表中(销售单号,贩卖机卡槽编号,销售数量,销售时间,销售价格)其中,跟销售管理有关的表如下图所示。 销售信息表 贩...

qq_43128902的博客 1257

两个SQL Server存储过程,一个触发器

1. 备份日志, 避免日志过快增长 no_log / trancate_only BACKUP LOG realnew_DATA WITH NO_LOG DBCC SHRINKDATABASE(realnew_DATA ,TRUNCATEONLY) BACKUP LOG realnew_DATA WITH Truncate_ONLY BACKUP...

weixin_30905981的博客 82

结合java讲sql server存储过程

1.注释 --第一种注释 /*第二种 注释*/ 2.批处理 是从客户机传递到服务器上的一组完整的数据和SQL指令,存储过程/触发器都属于批处理. 3.SQL server变量 1)局部变量:作用域局限在一定范围内的Transact-SQL对象。 局部变量可在一个批处理(存储过程或触发器)中被声明或定义, 然后这个批处理内的SQL语句就可以设置这个变量的值,或者是引用这个变量已经赋

江流儿 455

SQL Server 触发器

触发器是一种特殊类型的存储过程,它不同于之前的我们介绍的存储过程。触发器主要是通过事件进行触发被自动调用执行的。而存储过程可以通过存储过程的名称被调用。 Ø 什么是触发器     触发器对表进行插入、更新、删除的时候会自动执行的特殊存储过程。触发器一般用在check约束更加复杂的约束上面。触发器和普通的存储过程的区别是:触发器是当对某一个表进行操作。诸如:update、insert、d

dslinmy的专栏 595
上一篇: Office 依赖项警告——VS2005在我的机子上装完后的提示
下一篇: sql server 2005发布时提示'dbo.sysmergepublications'无效的解决办法
lanman
博客等级 码龄25年 56粉丝 101原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值