当前位置:文档之家› SQL编程存储过程和触发器

SQL编程存储过程和触发器


参数 (expr_expr) (char_expr) (integer_expr) (char_expr,integer_expr) (string_expr) (char_expr) (char_expr) (char_expr,integer_expr) (char_expr) (integer_expr) (float[,length[,decimal]]) (expr,start,length) (char_expr) ...
10
格物致新
厚德泽人
《数据库原理&应用》
1.1 T-SQL语法要素 — 变量
用SET为局部变量赋值的语法如下:
SET @local_variable= expression
例:
USE MyDb DECLARE @no varchar(10)
SET @no='2004060003'
SELECT 编号,姓名 FROM readers
内置函数
17
格物致新
厚德泽人
《数据库原理&应用》
1.3 函数 — 聚合函数
聚合函数:通常情况下基本的SQL函数,在
SELETE 、ORDER BY和WHERE等查询子句中使

18
格物致新
厚泽人
《数据库原理&应用》
1.3 函数 — 字符串函数
函数
+ ASCII CHAR LEFT LEN LOWER LTRIM RIGHT RTRIM SPACE
语法格式:
CREATE FUNCTION 函数名 (参数定义 ) RETURNS 数据类型
AS
BEGIN 函数体 RETURN 返回值表达式 END
23
格物致新
厚德泽人
《数据库原理&应用》
1.3 函数 — 自定义函数
CREATE FUNCTION CubicVolume
(@CubeLength decimal(4,1), @CubeWidth decimal(4,1), @CubeHeight decimal(4,1) )
7
返回上一条T-SQL语句执行后的错误号。
返回当前存储过程的ID号 返回登录记录中远程服务器的名字。 返回当前服务器进程的ID标识。 返回当前SQL Server服务器的版本和处理器类型。 返回当前SQL Server服务器的语言。 ...
格物致新
厚德泽人
《数据库原理&应用》
1.1 T-SQL语法要素 — 变量
不同的样式,可以用在表达式可以使用的地方 【格式】 CAST ( 表达式 AS 数据类型[(长度)] ) CONVERT ( 数据类型[(长度)], 表达式[, style] )
注:用户自定义的数据类型不能在此使用
21
格物致新
厚德泽人
《数据库原理&应用》
1.3 函数 — 日期和时间函数
在商业运算等实际运用中,常涉及到很多日期转换的问题。为了协
当前的批中。查询分析器将两个GO之间的语句组成一个字 符串交给服务器去执行
注释(“--”后面的内容或者包含在“/* …… */”之间的代码块)
4
格物致新
厚德泽人
《数据库原理&应用》
1.1 T-SQL语法要素 — 批
例,以下代码包含三个批:
USE Library GO /*第1批*/
create view v_books as
RETURNS decimal(12,3)
AS BEGIN
-- Cubic Centimeters.
RETURN ( @CubeLength * @CubeWidth * @CubeHeight ) END GO PRINT '长、宽、高分别是6、4、3的立方体的体积:' + CAST(dbo.CubicVolume(6,4,3) AS char(10))
运算符、函数、流程控制语句等,主要特点如下
是一种交互式查询语言,功能强大,简单易学 既可以直接查询数据库,也可以嵌入到其它高级语言
中执行
非过程化程度高,语句的操作执行由系统自动完成 所有的T-SQL命令都可以在查询分析器中完成
3
格物致新
厚德泽人
《数据库原理&应用》
1.1 T-SQL语法要素 — 批
批处理
一个批是由一条或多条T-SQL语句组成的语句集,这些语句
一起提交并作为一个组来执行。SQL Server将批中的语句
作为一个整体编译为一个执行计划。因为批中的语句是一起
提交给服务器的,所以可以节省系统开销
在查询分析器中,可以用GO命令标志一个批的结束。GO
不是一个执行语句,是通知查询分析器有多少语句要包含在
WHERE 编号= @no
11
格物致新
厚德泽人
《数据库原理&应用》
T-SQL数据库编程
1.T-SQL介绍
①T-SQL语法要素 ②运算符
3.触发器
①触发器的基本概念 ②创建触发器
③函数
④流程控制语句
③inserted和deleted表
④update()函数 ⑤删除触发器
2.存储过程
①存储过程的基本概念 ②创建存储过程
③带参数的存储过程
④使用游标
12
格物致新
厚德泽人
《数据库原理&应用》
1.2 运算符
T-SQL提供了如下几种类型的运算符:算术运算
符、比较运算符、字符连接运算符和逻辑运算符
算术运算符:用于数字之间的运算
13
格物致新
厚德泽人
《数据库原理&应用》
1.2 运算符
比较运算符:用于在多个数据或表达式之间进行比
③函数
④流程控制语句
③inserted和deleted表
④update()函数 ⑤删除触发器
2.存储过程
①存储过程的基本概念 ②创建存储过程
③带参数的存储过程
④使用游标
16
格物致新
厚德泽人
《数据库原理&应用》
1.3 函数
提供了非常丰富的内置函数,而且也允许用户自定
义函数。利用这些函数可以方便地实现各种运算和操作 。一般函数的返回值返回给SELECT请求
24
格物致新
厚德泽人
《数据库原理&应用》
T-SQL数据库编程
1.T-SQL介绍
①T-SQL语法要素 ②运算符
数值转字串 STR(数字表达式)
20
格物致新
厚德泽人
《数据库原理&应用》
1.3 函数 — 数据转换
数据转换函数:CAST和CONVERT
CAST和CONVERT函数:能将某种数据类型的表达式显式 转换为另一种数据类型的函数。CAST和CONVERT 提供相似
的功能,但CONVERT功能更强一些,还允许把日期转换成为
select b.title, b.author, p.pub_name as publisher, b.isbn from books b,publisher p
where b.pub_id=p.pub_id
GO SELECT * FROM v_books GO
5
/*第2批*/ /*第3批*/
格物致新
将产生不可预测的结果
6
格物致新
厚德泽人
《数据库原理&应用》
SQL常用的全局变量表
名称
@@connections @@rowcount
说明
返回当前到本服务器的连接的数目。 返回上一条T-SQL语句影响的数据行数。
@@error
@@procid @@remserver @@spid @@version @@language ...
格物致新
厚德泽人
《数据库原理&应用》
《数据库原理》
第七章 触发器和存储过程
(T-SQL数据库编程)
授课老师:曾长清
格物致新
厚德泽人
《数据库原理&应用》
T-SQL数据库编程
1.T-SQL介绍
①T-SQL语法要素 ②运算符
3.触发器
①触发器的基本概念 ②创建触发器
③函数
④流程控制语句
③inserted和deleted表
USE MyDb
DECLARE @varl varchar(8) --声明局部变量
SELECT @var1='读者姓名' SELECT @varl=姓名 FROM readers WHERE 编号='2004160426' --为局部变量赋初值
SELECT @varl AS ‘读者姓名’ --显示局部变量结果
④update()函数 ⑤删除触发器
2.存储过程
①存储过程的基本概念 ②创建存储过程
③带参数的存储过程
④使用游标
2
格物致新
厚德泽人
《数据库原理&应用》
1.1 T-SQL语法要素 — 特点
Transact-SQL(简称T-SQL)不仅支持所有的SQL语
句,而且还提供了丰富的编程功能,允许使用变量、
SELECT @variable_name=expression
[,@variable_name=expression]
[FROM list of tables]
[WHERE expression]
……
9
格物致新
厚德泽人
《数据库原理&应用》
1.1 T-SQL语法要素 — 变量
例:用SELECT为局部变量赋值
局部变量
局部变量是用户自定义的变量,前面通常加上@标记,使用范 围是定义它的批、存储过程或触发器。
相关主题