- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库原理应用6
An Introduction to Database System 西北工业大学明德学院 第八章 T-SQL语言 8.1 数据类型和变量 8.2 运算符和函数 8.3 程序控制语句 8.4 游标及应用 8.5 自定义函数 8.1 数据类型及变量 8.1.1 数据类型 系统数据类型:如char、varchar、datetime、int等等 用户数据类型:在系统数据类型的基础上,由用户自己定义 8.1.1 数据类型 1、数据类型的定义 用企业管理器定义 用T-SQL的存储过程定义数据类型 格式: Sp_addtype typename,system_data_type [,’null_type’] 说明:Sp_addtype:存储过程名称 typename:用户定义的数据类型名称 system_data_type:用户定义数据类型所依附的系统数据类型,如系统数据类型有额外说明用‘’括起来,如char,需说明长度,需用‘’括起来。 null_type:是否允许为空 8.1.1 数据类型 实例: 例1、自定义一个“address”数据类型 Sp_addtype address,’char(80)’ 例2、自定义一个“birthday” Sp_addtype birthday,datetime 2、使用 自定义的数据类型可以在定义表的结构时,象使用系统数据类型一样进行使用。 8.1.1 数据类型 3、自定义数据类型的删除 用企业管理器删除 用存储过程删除 Sp_droptype typename 例3、删除自定义的数据类型“birthday” Sp_droptype birthday 8.1.2 变量 Transact-SQL语言中有两种形式的变量,一种是用户自己定义的局部变量,另外一种是系统提供的全局变量。在使用方法以及具体意义上,这两种变量都有着较大的区别,本节将分别介绍这两种变量的使用方法。 8.1.2 变量 1、局部变量 局部变量是在批处理(也可以是存储过程或触发器)内由用户定义并使用的变量。用户在使用局部变量前必须事先声明,而它的使用范围也仅限于声明它的批处理(也可以是存储过程或触发器)以内。 [实例4] 利用局部变量在数据库学生库的学生信息表中查询学生“刘晨” 的年龄。 DECLARE @studentname varchar(20) SET @studentname=‘刘晨’ SELECT Sname,Sage FROM student WHERE Sname= @studentname 8.1.2 变量 从上面的例子,我们可以看出,通过声明局部变量可以查询学生信息表中任意的学生信息,只要修改赋给局部变量的值就可以。在使用局部变量查询需要做到两点:一是声明局部变量,二是给局部变量赋值。 8.1.2 变量 (1)声明局部变量 格式:DECLARE ( @ 局部变量名 数据类型[,….n]) 说明: DECLARE:该关键字表示将要声明变量。 数据类型可以是除text、ntext和image外的数据类型或用户定义的数据类型。 [, ….n ]:表示一个DECLARE语句中可以声明多个局部变量,这些变量用逗号相隔。 8.1.2 变量 (2) 局部变量的赋值 声明局部变量后,系统自动为变量赋初值NULL。若需要另外赋值,可以使用SET或SELECT语句。赋值语法如下: 命令格式:SET @局部变量名=表达式 或:SELECT @局部变量名=表达式 [FROM 表名[,….n ] WHERE 表达式] 8.1.2 变量 命令说明: 表达式可以是一个具体的数据如数字、字符串等,也可以是一个表达式或另一个局部变量或全局变量,还可以是从一个查询语句中查询出来的数据。 FROM子句用于向变量所赋的值源于由一个表中查询所得数据的情形。 一个SELECT语句可以为多个变量赋值,但一个SET语句仅能为一个变量赋值。若使用SELECT语句为变量赋值,则不能与其查询功能同时使用。若使用SELECT语句从表中取数为变量赋值,则其返回的数据必须惟一,否则仅将最后一个数据赋给变量。 8.1.2 变量 例5、使用SELECT语句进行赋值,从表格中查询出一条数据赋值给已经声明的变量: DECLARE @studentname varchar(20) SELECT @ studentname =Sname FROM student WHERE Sno=’200215121‘ GO 8.1.2 变量
文档评论(0)