数据库中触发器及存储过程

发布时间:2024-09-01

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

Transact-SQL程序设计 在Transact-SQL 语言中标准的SQL 语句畅通 无阻。 Transact-SQL 也有类似于SQL 语言的分类不 过做了许多扩充。 本章中,我们介绍了标准SQL语言的语法及其 基本使用方法,在此只介绍Transact-SQL 语言 中的其它部分。1 2 3 4 变量 流程控制命令 其它命令 常用函数1

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

1 . 变量Transact-SQL 中使用两种变量:局部变量和全局变量。 1.局部变量 局部变量是用户可自定义的变量,它的作用范围仅 在程序内部。

在程序中通常用来储存从表中查询到的数据,或当作程序执行过程中暂存变量使用。 局部变量必须以@开头,而且必须先用DECLARE 命令 说明后才可使用。其说明形式为: DECLARE @变量名 变量类型[,@变量名变量类型…]2

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

1 . 变量 在Transact-SQL 中不能像在一般的程序语言中一样

使用“变量=变量值”来给变量赋值,必须使用SELECT 或SET 命令来设定变量的值。其语法如下: SELECT @局部变量= 变量值 SET @局部变量量= 变量值 【例】声明一个长度为 8 个字符的变量id,并赋值。

declare @id char(8)select @id =‘10010001’

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

2.全局变量 全局变量是SQL Server 系统内部使用的变量,其作 用范围并不局限于某一程序,而是任何程序均可随时 调用。 全局变量通常存储一些SQL Server 的配置设定值和 效能统计数据。用户可在程序中用全局变量来测试系 统的设定值或Transact-SQL 命令执行后的状态值。 全局变量不是由用户的程序定义的,它们是在服务 器级定义的,只能使用预先说明及定义的全局变量。

引用全局变量时必须以“@@”开头。 局部变量的名称不能与全局变量的名称相同,否则 会在应用中出错。4

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

3.注释符在Transact-SQL 中可使用两类注释符:1.ANSI 标准的注释符“- -”用于单行注释。 2.与C 语言相同的程序注释符号,即

“/*……*/”,/* 用于注释文字的开头,*/用于注释文字的结尾,可在程序中标识多行文字为注释。

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

2.2.1 BEGIN…ENDBEGIN

流程控制命令

Transact-SQL 语言使用的流程控制命令主要有以下几 种控制命令。 其语法如下:<命令行或程序块块> END

BEGIN…END 用来设定一个程序块,将在BEGIN…END 内的所有程序视为一个单元执行。 BEGIN…END 经常在条件语句(如IF…ELSE)中使用。 在BEGIN…END 中可嵌套另外的BEGIN…END 来定义另 一程序块。6

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

2.2 IF … ELSE 其语法如下:IF <条件表达式式> <命令行或程序块块> [ELSE [条件表达式式] <命令行或程序块块>]

其中: <条件表达式>可以是各种表达式的组合,但表达式的值 必须是逻辑值“真”或“假”。 ELSE 子句是可选的,最简单的IF 语句没有ELSE 子句部 分。 IF…ELSE

用来判断当某一条件成立时执行某段程序,条 件不成立时执行另一段程序。 如果不使用程序块,IF 或ELSE 只能执行一条命令。 IF ELSE 可以进行嵌套,在Transact-SQL 中最多可嵌套 32 级。7

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

【例】从SC数据表中求出学号为S1同学的平均 成绩,如果此平均成绩大于或等于60分,则输出 “pass”信息。 if (select avg(score) from sc where sno='S1' group by sno)>=60 begin

print 'pass'end

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

2.3 CASE CASE 命令有两种语句格式: 格式1:CASE <运算式> WHEN <运算式> THEN <运算式> … WHEN <运算式> THEN <运算式> [ELSE <运算式>] END

该语句的执行过程是: 将CASE后面表达式的值与各WHEN子句中的表达式的值进行比较, 如果二者相等,则返回THEN后的表达式的值,然后跳出CASE语 句,否则返回ELSE子句中的表达式的值。 ELSE子句是可选项。当CASE语句中不包含ELSE子句时,如果所 有比较失败时,CASE语句将返回NULL。9

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

【例】从学生表S中,选取SNO,SEX,如果SEX 为“男”则输出“M”,如果为“女”输出“F”。SELECT SNO, SEX= CASE sex WHEN '男' THEN 'M'

WHEN '女' THEN 'F'END FROM S10

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

格式2:CASE WHEN <条件表达式> THEN <运算式> … WHEN <条件表达式> THEN <运算式> [ELSE <运算式>] END 该语句的执行过程是: 首先测试WHEN后的表达式的值 如果其值为真,则返回THEN后面的表达式的值,否则 测试下一个WHEN子句中的表达式的值 如果所有WHEN子句后的表达式的值都为假,则返回 ELSE后的表达式的值 如果在CASE语句中没有ELSE子句,则CASE表达式返回 NULL。 注:CASE 命令可以嵌套到SQL 命令中。

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

【例】从SC表中查询所有同学选课成绩情况, 凡成绩为空者输出“未考”、小于60分输出“不 及格”、60分至70分输出“及格”、70分至90分 输出“良好”、大于或等于90分时输出“优秀”。SELECT SNO,CNO, SCORE= CASE WHEN SCORE IS NULL THEN '未考' WHEN SCORE<60 THEN '不及格' WHEN SCORE>=60 AND SCORE<70 THEN '及格' WHEN SCORE>=70 AND SCORE<90 THEN '良好' WHEN SCORE>=90 THEN '优秀' END FROM SC12

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

2.4 WHILE…CONTINUE…BREAK 其语法如下: WHILE <条件表达式> BEGIN <命令行或程序块> [BREAK] [CONTINUE] [命令行或程序块] END WHILE 命令在设定的条件成立时,会重复执行命令行 或程序块。 CONTINUE 命令可以让程序跳过CONTINUE 命令之后的 语句,回到WHILE 循环的第一行,继续进行下一次循环。 BREAK 命令则让程序完全跳出循环,结束WHILE 命令 的执行。 WHILE 语句也可以嵌套。

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

如:以下程序计算1-100之间所有能被3整除的数的个 数及总和。 DECLARE @S SMALLINT,@I SMALLINT,@NUMS SMALLINT SET @S=0 SET @I=1 SET @NUMS=0 WHILE (@I<=100) BEGIN IF (@I%3=0) BEGIN SET @S=@S+@I SET @NUMS=@NUMS+1 END SET @I=@I+1 END

PRINT @S PRINT @NUMS14

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

2.5

WAITFOR

其语法如下:WAITFOR {DELAY <‘时间’> | TIME <‘时间’> | ERROREXIT | PROCESSEXIT | MIRROREXIT}

WAITFOR 命令用来暂时停止程序执行,直到所设定的 等待时间已过或所设定的时间已到才继续往下执行。 其中‘时间’必须为DATETIME 类型的数据,但不能包 括日期。 各关键字含义如下:1.DELAY:用来设定等待的时间,最多可达24 小时 2.TIME:用来设定等待结束的时间点 3.ERROREXIT:直到处理非正常中断 4.PROCESSEXIT:直到处理正常或非正常中断

5.MIRROREXI: 直到镜像设备失败15

对于学习数据库概论的同学们存储过程和触发器是学习中的难点和重点,相对于sql语句的学习,这些更具有难度,所以这份ppt能够更好的促进对这两个知识点的理解,里面陈诉了好多数据库编程的相关语法,和结构希望能给你们带来帮助

【例】等待1 小时2 分零3 秒后才执行SELECT 语句。waitfor delay ‘01:02:03’ Select * from employee

数据库中触发器及存储过程.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219