SQL Server 2005 数据库应用技术 教学课件 ppt 作者 刘宏 第3章 使用Transact-SQL语言

上传人:E**** 文档编号:89184251 上传时间:2019-05-20 格式:PPT 页数:45 大小:1.52MB
返回 下载 相关 举报
SQL Server 2005 数据库应用技术 教学课件 ppt 作者 刘宏 第3章 使用Transact-SQL语言 _第1页
第1页 / 共45页
SQL Server 2005 数据库应用技术 教学课件 ppt 作者 刘宏 第3章 使用Transact-SQL语言 _第2页
第2页 / 共45页
SQL Server 2005 数据库应用技术 教学课件 ppt 作者 刘宏 第3章 使用Transact-SQL语言 _第3页
第3页 / 共45页
SQL Server 2005 数据库应用技术 教学课件 ppt 作者 刘宏 第3章 使用Transact-SQL语言 _第4页
第4页 / 共45页
SQL Server 2005 数据库应用技术 教学课件 ppt 作者 刘宏 第3章 使用Transact-SQL语言 _第5页
第5页 / 共45页
点击查看更多>>
资源描述

《SQL Server 2005 数据库应用技术 教学课件 ppt 作者 刘宏 第3章 使用Transact-SQL语言 》由会员分享,可在线阅读,更多相关《SQL Server 2005 数据库应用技术 教学课件 ppt 作者 刘宏 第3章 使用Transact-SQL语言 (45页珍藏版)》请在金锄头文库上搜索。

1、3.1 了解Transact-SQL,3.1.1 Transact-SQL语言,SQL语言是关系型数据库领域中的标准化查询语言,能够针对数据库完成定义、查询、操纵和控制等功能。微软公司在SQL语言的基础上对其进行了大幅度的扩充,形成Transact-SQL语言(简称T-SQL),使其功能更加完善,性能更加优良。,3.1.2 T-SQL语言的语法约定,3.1.3 标识符,标识符用于标识服务器、数据库、数据库对象和变量等,创建时应遵循下列规则: 标识符的长度不超过128个字符。 标识符的第一个字符必须是字母、下划线(_)、符号或者符号#。 后续字符可以是字母、数字、_、#或者$。 不能包含空格或其

2、他特殊字符。 不能使用SQL Server预留的单词。,3.1.4 批处理,批处理就是一个或多个T-SQL语句的集合,用户或应用程序一次将它发送给SQL Server 2005,由SQL Server 2005编译成一个执行单元,此单元称为执行计划。 建立批处理如同编写SQL语句,区别在于它是多条语句同时执行的,所有的批处理命令都使用GO作为结束标志,当T-SQL的编译器扫描到某行的前两个字符是GO的时候,它会把GO前面的所有语句作为一个批处理送往服务器。,3.1.5 脚本,脚本是批处理的存在方式,将一个或多个批处理组织到一起就是一个脚本。脚本可以在查询设计器中编辑、调试和执行。如在查询设计器

3、中执行的各个实例都可以称为一个脚本。,3.1.6 注释,T-SQL中的注释语句,也称为注解,注释内容通常是一些说明性文字,对程序的结构及功能给出简要的解释。注释语句不是可执行语句,不被系统编译,也不被程序执行。SQL Server支持两种形式的程序注释语句: 行内注释:使用注释符 “-”,注释语句写在“-”的后面,只能书写单行。 块注释:使用注释符“/* */”,注释语句写在“/*”和“*/”之间,可以连续书写多行。,3.1.7 数据类型,SQL Server可以识别多种不同的系统定义数据类型,还可以创建用户定义数据类型以满足特定需求。常用的系统定义数据类型如下。 (1)整数数据类型 整数数据

4、类型是最常用的数据类型之一,由正整数和负整数所组成。,3.1.7 数据类型,(2)精确数字数据类型 用于表示带固定精度和小数位数的数值数据类型,包括Decimal和numeric两种类型。 1)decimal (p , s ):提供小数所需要的实际存储空间,可以存储2到17个字节的从-1038+1到1038-1之间的数值。 2)numeric (p , s ):与Decimal数据类型几乎完全相同,区别是在表格中只有numeric型的数据可以带有IDENTITY关键字的列。 其中: p(精度):最多可以存储的十进制数字的总位数,包括小数点左边和右边的位数。该精度必须是从1到最大精度38之间的值

5、。默认精度为18。 s(小数位数):小数点右边可以存储的十进制数字的最大位数。小数位数必须是从0 到p之间的值(即0 = s = p)。仅在指定精度后才可以指定小数位数。,3.1.7 数据类型,(3)浮点数据类型 用于表示浮点数值数据的数值数据类型。由于浮点数据为近似值,因此数据类型范围内的所有值不一定都能精确地表示。 浮点数据类型主要包括Real和Float两种类型,存储范围如表所示。,3.1.7 数据类型,(4)字符数据类型 SQL Server提供了三种字符数据类型,分别是char、varchar和text。 char:最长可以容纳8000个字符,并且每个字符占用一个字节的存储空间。使用

6、Char数据类型定义变量时,需要指定数据的最大长度。 varchar:该数据类型的使用方式与Char数据类型类似。与Char数据类型不同的是,Varchar数据类型所占用的存储空间由字符数据所占据的实际长度来确定。 text:该数据类型所能表示的最大长度为 231 - 1 ,当需要表示的数据类型长度超过8000时,可以采用text来处理可变长度的字符数据。,3.1.7 数据类型,(5)日期/时间数据类型 日期和时间数据由有效的日期或时间组成。分为datetime和smalldatetime两类。 Datetime:数据范围从1753年1月1日到9999年12月31日,可以精确到千分之一秒,此类

7、型的数据占用8个字节的存储空间。 Smalldatetime:数据范围从1900年1月1日到2079年6月6日,可以精确到分,此类型的数据占4个字节的存储空间。,3.1.7 数据类型,(6)货币数据类型 货币数据表示正的或负的货币值。在SQL Server中使用Money和Smallmoney数据类型存储货币数据。货币数据存储的精确度为4位小数。 Money:占据8字节存储空间,取值范围为-922,337,203,685,477. 5808至+922,337,203,685,477. 5807,并且可以精确到万分之一货币单位。 Smallmoney:占据4字节存储空间,取值范围为-214,74

8、8. 3648到+214,748. 3647,可以精确到万分之一货币单位。,3.1.7 数据类型,(7)二进制数据类型 二进制数据类型用于存储二进制数据,包括binary和varbinary两种。 Binary:用于存储固定长度的二进制数据,表示数据的长度取值为1到8000个字节。在输入数据时必须在数据前加上字符0X作为二进制标识。若输入的数据过长将会截掉其超出部分,若输入的数据位数为奇数则会在起始符号0X后添加一个0。 Varbinary:具有可变长度的特性,表示数据的长度也为1到8000个字节,若输入的数据过长将会截掉其超出部分。当binary数据类型允许NULL值时将被视为varbina

9、ry数据类型。 Image:通常用来存储图形等对象。在输入数据时同binary数据类型一样,必须在数据前加上字符“0X”作为二进制标识。,3.1.7 数据类型,(8)逻辑数据类型 bit数据类型占用1个字节的存储空间,其值为0或1,如果输入0或1以外的值将被视为1。 (9)用户定义的数据类型 除了使用系统提供的数据类型外,还可以根据需要自定义数据类型来定义表的列或声明变量,以保证这些列有相同的数据类型、长度和可空性。 自定义数据类型基于Microsoft SQL Server中提供的数据类型,当创建用户定义的数据类型时,必须提供数据类型的名称、所基于的系统数据类型和数据类型的可空性三个参数。,

10、3.1.8 常量,常量可以用来表示特定的数值,在程序运行过程中其值保持不变。根据不同的数据类型,常量的格式也会发生相应的变化。,3.1.9 变量,变量是执行程序中必不可少的部分,它主要用来在程序运行过程中存储和传递数据。与常量不同,变量的值在程序运行过程中可以随时改变。使用变量必须遵守先声明后使用的原则。,3.1.9 变量,(1)局部变量 局部变量是作用域局限在一定范围内的变量,是用户自定义的变量,可用于临时存储数值。 局部变量被引用时要在其名称前加上标志“”,而且必须先用DECLARE命令定义,最长为128个字符。 1)局部变量的声明 在使用一个局部变量之前,必须先声明该变量。声明局部变量的

11、语法格式如下: DECLARE 变量名 变量类型 ,变量名 变量类型,n,3.1.9 变量,2)局部变量赋值 局部变量的初值为NULL(空),可以使用SELECT或SET语句对变量进行赋值。 SELECT语句的语法格式为: SELECT 变量名 = 表达式 ,变量名 = 表达式 SET语句的语法格式为: SET 变量名 = 表达式,3.1.9 变量,3)局部变量的输出 局部变量可以使用SELECT语句输出,还可以使用PRINT语句输出,语法格式如下: SELECT 局部变量名 AS 局部变量名 PRINT 局部变量名,3.1.9 变量,(2)全局变量 全局变量是SQL Server系统内部使用

12、的变量,由系统预先定义并负责维护,其作用范围并不仅仅局限于某一程序,而是任何程序均可以随时调用。 全局变量通常存储一些SQL Server的配置设定值和统计数据。用户可以在程序中用全局变量来测试系统的设定值或者是T-SQL命令执行后的状态值。 全局变量以“”开头,用户不能随意建立和修改。,3.1.10 运算符,运算符是一些符号,它们能够用来执行算术运算,字符串连接,赋值以及在字段、常量和变量之间进行比较等操作。T-SQL中的运算符包括算术运算符、比较运算符、逻辑运算符、位运算符、赋值运算符和连接运算符。 (1)算术运算符 算术运算符可以在两个表达式上执行数学运算,这两个表达式可以是数字数据类型

13、分类的任何数据类型。算术运算符包括加(+)、减(-)、乘(*)、除(/)和取模(%)。,3.1.10 运算符,(2)赋值运算符 T-SQL中只有一个赋值运算符,即等号(=)。 (3)比较运算符 比较运算符用于比较两个表达式的大小或是否相同,其比较的结果是逻辑值,即TRUE(表示表达式的结果为真)、FALSE(表示表达式的结果为假)以及UNKNOWN。,3.1.10 运算符,(4)逻辑运算符 逻辑运算符用来测试某些条件是否成立,并返回逻辑值TRUE和FALSE。,3.1.10 运算符,(5)连接运算符 T-SQL中的连接运算符“+”用于连接两个字符串,其实质就是将一个字符串加入到另一个字符串的尾

14、部。,3.1.11 运算符的优先级,同一个表达式中,可能包括多个运算符,这就涉及到运算的先后顺序,即优先级问题。,3.2 了解函数,3.2.1 聚合函数,聚合函数用于对一组值进行计算并返回一个数值。聚合函数经常与SELECT语句一起使用。,3.2.2 算术函数,算术函数用来对数值型数据进行数学运算。,3.2.3 字符串函数,字符串函数可以对char、nchar、varchar和nvchar等类型的参数执行操作,并返回相应的结果,返回值一般为字符串或数字。,3.2.4 日期和时间函数,日期和时间函数用于对日期和时间数据进行各种不同的处理和运算,并返回一个字符串、数字值或日期和时间值。,3.2.5

15、 转换函数,一般情况下,SQL Server会自动处理某些数据类型的转换。这种转换被称为隐性转换。但是,无法由SQL Server自动转换的或者SQL Server自动转换的结果不符合预期结果,就需要使用转换函数做显式转换。用于转换的函数包括: CAST(expression AS data_type):将一种数据类型的表达式显式转换为另一种数据类型的表达式。 CONVERT(data_type, expression ,style):将一种数据类型的表达式显式转换为另一种数据类型的表达式。,3.2.5 转换函数,Style典型取值,3.2.5 转换函数,【例】将当前日期转换为美国和英国对应的

16、字符串。 PRINT 系统当期日期: PRINT GETDATE() PRINT 美国格式: + CONVERT(CHAR(10), GETDATE(),101) PRINT 英国格式: + CONVERT(CHAR(10), GETDATE(),103),3.3 使用流程控制语句,3.3.1 BEGINEND语句,BEGINEND语句用来定义语句块,即将BEGINEND内的所有T-SQL语句视为一个单元执行。在实际应用中,BEGIN和END必须成对出现。 BEGINEND语句的基本语法格式为: BEGIN T-SQL语句或语句块 END,3.3.2 IFELSE语句,IFELSE语句是条件判断语句,用于实现选择结构。 IFELSE语句的语法格式为: IF 条件表达式 T-SQL语句或语句块 ELSE T-SQL语句或语句块,3.3.2 IFELSE语句,【例】输出三个整数中的最大数。 DECLARE number1 INT,number2 INT,number3 INT

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号