20

Click here to load reader

第 3 讲 Transact-SQL 语言编程

Embed Size (px)

DESCRIPTION

第 3 讲 Transact-SQL 语言编程. 学习目的. 掌握 Transact-SQL 语言编程知识,包括标识符、表达式、运算符、常用函数、常量与变量,常用系统存储过程,以及流控语句等,并能够根据实际需要,进行综合运用编写程序代码。. 内容框架. 问题 如何编制类似 C 语言的基本程序? 要能编程须具备哪些结构? Transact-SQL 语法规则 引用数据库对象的规则 Transact-SQL 的语法元素 标识符:常规标识符、分隔标识符. 编程基础知识. 问题:下面的标识符是否符合 SQL Server 的命名规则: $table @table# - PowerPoint PPT Presentation

Citation preview

Page 1: 第 3 讲  Transact-SQL 语言编程

第第 33 讲 讲 Transact-SQLTransact-SQL 语言编程语言编程

Page 2: 第 3 讲  Transact-SQL 语言编程

学习目的

掌握 Transact-SQL语言编程知识,包括标识符、表达式、运算符、常用函数、常量与变量,常用系统存储过程,以及流控语句等,并能够根据实际需要,进行综合运用编写程序代码。

Page 3: 第 3 讲  Transact-SQL 语言编程

内容框架

内容框架

Page 4: 第 3 讲  Transact-SQL 语言编程

编程基础知识

编程基础知识

问题如何编制类似 C 语言的基本程序?要能编程须具备哪些结构? Transact-SQL语法规则 引用数据库对象的规则 Transact-SQL的语法元素

标识符:常规标识符、分隔标识符

Page 5: 第 3 讲  Transact-SQL 语言编程

练习练习11

问题:下面的标识符是否符合SQL Server的命名规则:$table@table#_var_1order detailsorder

Page 6: 第 3 讲  Transact-SQL 语言编程

常用函数

常用函数

聚合函数 字符串函数日期函数 系统函数数学函数 元数据函数安全函数 游标函数配置函数 排名函数

Page 7: 第 3 讲  Transact-SQL 语言编程

排名函数

排名函数

ROW_NUMBER():返回查询结果每一行的序号。

RANK():返回查询结果每一行的排名,排名有可能会间断。 DENSE_RANK:返回查询结果每一行的排名,排名没有任何间断。

Page 8: 第 3 讲  Transact-SQL 语言编程

常用函数(练习)

常用函数(练习)

思考:如何将一个数字转换为一个字符串?

如何截取字符串?如何根据一个人的出生年月,使用日期函数计算年龄?

如何对一个数进行取整?进行四舍五入?

Page 9: 第 3 讲  Transact-SQL 语言编程

常量常量

常量:字符串常量数值常量日期常量uniqueidentifier常量

注:引用数值常量不用单引号,引用日期、字符串常量时需要加单引号

Page 10: 第 3 讲  Transact-SQL 语言编程

变量变量

变量:在程序运行过程中值是变化的量局部变量(以 @ 开头;使用DECLARE语句声明)

【问题】DECLARE @var1 int,@var2 money

SELECT @var1=50,@var2=$29.95

SELECT @var1,@var2 全局变量(也称配置函数,是系统定义的变量,以 @@开头;用户只能使用)

例如: @@version @@rowcount

Page 11: 第 3 讲  Transact-SQL 语言编程

练习练习22

问题: 编写程序计算两个整数之和

Page 12: 第 3 讲  Transact-SQL 语言编程

运算符

运算符

算术运算符( + 、-、 * 、 / 、% )

比较运算符( = 、 > 、 < 、 >= 、<= 、 <> 、 != 、 !< 、 !>)

逻辑运算符( NOT 、 OR 、 AND 、IN 、 LIKE 、 BETWEEN 、 EXISTS)

字符串连接运算符(+) 赋值运算符( = ) 位运算符( & 、 | 、 ^ 、 ~ )

Page 13: 第 3 讲  Transact-SQL 语言编程

常用系统存储过程

存储过程分为:系统存储过程用户定义的存储过程

常用存储过程练习:显示 Xk 数据库有哪些数据库对象USE Xk

GO

SP_HELP

GO

Page 14: 第 3 讲  Transact-SQL 语言编程

批处理

批处理

批处理的特点一次发给数据库服务器的所有的SQL 语句,由 GO 作为结束标志。

编译成一个可执行单元——执行计划

执行时,每次执行计划中的一条语句

特别注意:如果在一个批处理中,某条语句存在语法错误, SQL Server将不执行批处理中的任何语句。【例 】

Page 15: 第 3 讲  Transact-SQL 语言编程

流控语句

流控语句

【问题】如何用 SQL语句编程实现:求 1+2+3+4+…+100=?编程思想:代码:分析: WHILE、 BEGIN…END、IF…ELSE…、 GOTO的使用用法

Page 16: 第 3 讲  Transact-SQL 语言编程

练习练习33

编写程序,计算 n! ( n=10 ),并将结果显示出来

Page 17: 第 3 讲  Transact-SQL 语言编程

流控语句

流控语句

WAITFOR语句:1. WAITFOR DELAY ‘time’——

延迟一段时间2. WAITFOR TIME ‘time’——

等待到一个时刻

Page 18: 第 3 讲  Transact-SQL 语言编程

流控语句

流控语句

CASE语句(开关语句)【例】 P115 例 3.32

【练习】在 Xk数据库中显示班级编码、班级名称和系部名称(当系部编码为 01时,显示系部名称为“计算机系”;当系部编码为 02时,显示系部名称为“建筑系”;当系部编码为 03时,显示系部名称为“旅游系”),要求使用 CASE语句

Page 19: 第 3 讲  Transact-SQL 语言编程

本章总结

本章总结

重点掌握:SQL Server中标识符的命名规则

学会使用局部变量和全局变量学会使用一些常用的函数流控语句

学会编写简单的 SQL程序

Page 20: 第 3 讲  Transact-SQL 语言编程

课后任务

思考与练习:117页 1-6题