已阅读5页,还剩83页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 Transact SQL语言基础 对应教材第6章 电气信息工程学院自动化教研室主讲教师 陈志武Email CHENYYJ 163 COM 第六讲 2 主要内容 基本数据类型 2 常量与变量 3 运算符与表达式 4 流程控制语句 5 T SQL语言简介 1 3 主要内容 注释 6 函数 7 4 一 历史 1 T SQL语言简介 1 T SQL语言起源于SQL StructuredQueryLanguage 语言 SQL语言的历史 70年代 由IBM公司开发出来的 1976年开始在商品化关系数据库系统中应用 1986 ANSI确认SQL为关系数据库语言的美国标准 1987年被ISO采纳为国际标准 称为SQL 86 1989 ANSI发布了SQL 89标准 后来被ISO采纳为国际标准 1992 ANSI ISO发布了SQL 92标准 习惯称为SQL2 1999年 ANSI ISO发布了SQL 99标准 习惯称为SQL3 2003 ANSI ISO共同推出了SQL2003标准 5 一 历史 1 T SQL语言简介 1 T SQL语言起源于SQL StructuredQueryLanguage 语言 Transact SQL语言是Microsoft开发的一种SQL语言 简称T SQL语言 它不仅包含了SQL 86和SQL 92的大多数功能 而且还对SQL进行了一系列的扩展 增加了许多新特性 增强了可编程性和灵活性 Transact SQL语言主要包括 数据定义语句 DataDefinitionLanguage DDL 如对数据库对象的创建 CREATE 修改 ALTER 删除语句 DROP 等 6 一 历史 1 T SQL语言简介 1 T SQL语言起源于SQL StructuredQueryLanguage 语言 数据操纵语句 DataManipulationLanguage DML 用来查询 SELECT 添加 INSERT 修改 UPDATE 删除 DELETE 数据库中数据的语句数据控制语句 DataControlLanguage DCL 用来设置或更改数据库用户或角色的语句 7 一 历史 1 T SQL语言简介 1 T SQL语言起源于SQL StructuredQueryLanguage 语言 一些附加的语言元素如变量 函数 流程控制语句等 这些不是SQL 92的标准内容 8 二 标识符 2 标识符的分类 1 常规标识符 2 分隔标识符 1 标识符的定义 标识符用于标识服务器 数据库 数据库对象 变量等 1 T SQL语言简介 9 二 标识符 1 T SQL语言简介 1 常规标识符指符合标识符格式规则的标识符 标识符的格式规则如下 长度不超过128个字符 开头字母为a z或A Z 或 以及来自其它语言的字母字符 后续字符可以是a z A Z 来自其它语言的字母字符 数字 不允许嵌入空格或其它特殊字符 不允许与保留字同名 10 二 标识符 1 T SQL语言简介 2 分隔标识符对于不符合格式规则的标识符 当用于Transact SQL语句时 必须用双引号或方括号括起来 例如 SELECT FROM MyTable 等价于SELECT FROM MyTable 11 二 标识符 1 T SQL语言简介 对于常规标识符 可以加上双引号或方括号 也可以不加 例如 SELECT FROMauthors该语句等价于SELECT FROM authors 也等价于SELECT FROM authors 12 三 语句符号约定 1 T SQL语言简介 13 三 语句符号约定 1 T SQL语言简介 例如 SELECT子句的语法如下 SELECT ALL DISTINCT TOPn PERCENT WITHTIES 其中 语法块进一步定义如下 表名 视图名 表别名 列名 表达式 IDENTITYCOL ROWGUIDCOL AS 列别名 列别名 表达式 n 14 2 基本数据类型 使用SQLServer创建数据库中的表时 要对表中的每一列定义一种数据类型 数据类型决定了表中的某一列可以存放什么数据 除了定义表需要指定数据类型外 使用视图 存储过程 变量 函数等都需要用到数据类型 SQLServer提供了丰富的系统定义的数据类型 用户还可以在此基础上自己定义数据类型 15 2 数据类型 1 bigint类型存储大小 8个字节 取值范围 263 263 12 int类型存储大小 4个字节 取值范围 231 231 13 smallint类型存储大小 2个字节 取值范围 215 215 14 tinyint类型存储大小 1个字节 取值范围 0 255 一 整形数据类型 16 2 数据类型 二 定点数据数据类型 定点数据类型用于表示定点实数 包括numeric和decimal类型 Numeric等价于decimal 格式 decimal p s anumeric p s b说明 p 表示精度 指定小数点左边和右边十进制数字的最大位数 取值在1到38之间 缺省值为18 s 指定小数点右边十进数的最大位数 取值在0到p之间 缺省值为0 表示范围 1038 1 1038 1 17 2 数据类型 三 浮点数据类型 表示范围 1 79E 308 1 79E 308 1 float类型格式 float n 说明 n 尾数的位数 具体如下表 18 2 数据类型 三 浮点数据 2 real类型存储大小 4个字节取值范围 3 40E 38 3 40E 38精度 7位在SQLServer中 real的同义词为float 24 19 2 数据类型 四 字符型数据 分为Unicode字符数据类型和非Unicode字符数据类型 非Unicode字符数据类型 允许使用由特定字符集定义的字符 字符集在安装SQLServer时选择 不能更改 非Unicode字符数据类型 char varchar和text Unicode字符数据类型 可存储由Unicode标准定义的任何字符 包含由不同字符集定义的所有字符 需要相当于非Unicode数据类型两倍的存储空间 Unicode字符数据数据类型包括 nchar nvarchar和ntext 对于存储来源于多种字符集的字符的列 可采用这些数据类型 20 2 数据类型 四 字符型数据 1 char类型格式 char n 功能 定义长度为n个字节的固定长度非Unicode字符数据 每个字符占一个字节 说明 n 1 8000存储大小 n个字节 n个字符 2 varchar类型格式 varchar n 功能 定义长度最多为n个字节的可变长度非Unicode字符数据 每个字符占一个字节 说明 n 1 8000 存储大小 输入字符的实际长度 长度可为零 21 2 数据类型 四 字符型数据 3 nchar类型格式 nchar n 功能 定义包含n个字符的固定长度Unicode字符数据说明 n 1 4000存储大小 2n个字节4 nvarchar类型格式 nvarchar n 功能 定义包含最多n个字符的可变长度Unicode字符数据说明 n 1 4000 存储大小 所输入的字符实际个数的两倍 长度可以为零 22 2 数据类型 四 字符型数据 5 text类型功能 用于存储大块的非Unicode字符 长度可变 字符最大长度存储空间等于输入字符个数6 ntext类型功能 用于存储大块的Unicode字符 长度可变 字符最大长度存储空间等于输入字符个数的两倍 23 2 数据类型 五 日期与时间数据类型 日期和时间数据类型用于存储日期和时间的结合体 包括datetime和smalldatetime两种类型 1 datetime类型存储大小 8个字节表示范围 1753年1月1日零时 9999年12月31日23时59分59秒 例 01 01 9823 59 592000 5 2912 30 482 smalldatetime存储大小 4个字节表示范围 1900年1月1日 2079年6月6日 例 2000 05 0812 352000 05 2912 352000 05 29 24 2 数据类型 六 图形 image 数据类型 image数据类型用于存储可变长度二进制数据 其长度界于0到231 1个字节之间 25 2 数据类型 七 货币数据类型 货币数据类型包括money和smallmoney数据类型 货币数据存储的精确度为四位小数 1 money类型存储大小 8个字节表示范围 922 337 203 685 477 5808 922 337 203 685 477 58072 smallmoney类型存储大小 4个字节表示范围 214 748 3648 214 748 3647 26 2 数据类型 八 位 bit 数据类型 bit数据类型的取值只有0和1 如果一个表中有不多于8个的bit列 这些列将作为一个字节存储 如果表中有9到16个bit列 这些列将作为两个字节存储 更多列的情况依此类推 27 2 数据类型 九 二进制数据类型 二进制数据类型又可以分为binary和varbinary类型 1 binary类型格式 binary n 功能 定义固定长度的n个字节二进制数据 当输入的二进制数据长度小于n时 余下部分填充0 说明 n 1 8000 28 2 数据类型 九 二进制数据类型 2 varbinary类型格式 varbinary n 功能 定义n个字节可变长度二进制数据 说明 n 1 8000存储大小 为实际输入数据长度加4个字节 而不是n个字节 输入的数据长度可能为0字节 如果在数据定义或变量定义语句中使用时没有指定n 则默认长度n为1 如果在CAST函数中使用时没有指定n 则默认长度n为30 29 2 数据类型 十 其他数据类型 1 timestamp类型 时间戳数据类型 存储大小 8个字节 时间戳类型的数据用于提供数据库范围内的惟一值 反映数据库中数据修改的相对顺序 相当于一个单调上升的计数器 当表中的某列定义为timestamp类型时 在对表中某行进行修改或添加行时 相应timestamp类型列的值会自动被更新 30 2 数据类型 十 其他数据类型 2 uniqueidentifier类型用于存储一个16字节长的二进制数据 它是SQLServer根据计算机网络适配器和CPU时钟产生的全局惟一标识符 GloballyUniqueIdentifier GUID 该数字可以通过调用SQLServer的NEWID函数获得 GUID是一个唯一的二进制数字 世界上的任何两台计算机都不会生成重复的GUID值 GUID主要用于在拥有多个节点 多台计算机的网络中 分配必须具有唯一性的标识符 31 2 数据类型 十 其他数据类型 3 sql variant类型用于存储除text ntext image timestamp和sql variant外的其它任何合法的数据 4 table类型用于存储对表或者视图处理后的结果集 这种新的数据类型使得用变量就可以存储一个表 从而使函数或过程返回查询结果更加方便 快捷 5 cursor类型cursor类型是变量或存储过程的OUTPUT参数的一种数据类型 这些参数包含对游标的引用 32 2 数据类型 十一 用户自己定义的数据类型 33 3 常量与变量 一 常量 常量也称为标量值 是表示一个特定数据值的符号 常量的格式取决于它所表示的值的数据类型 1 普通字符串常量字符串常量用单引号括起来 如果要在字符串中包含单引号 则可以使用连续的两个单引号来表示 例如 Chinese ProcessXis50 complete Thelevelforjob id dshouldbebetween dand d 空字符串 I amastudent 34 3 常量与变量 一 常量 2 Unicode字符串常量对于Unicode字符串的格式 需要在前面加一个N标识符 N前缀必须是大写字母 例如 Mich l 是字符串常量N Mich l 是Unicode字符常量Unicode常量被解释为Unicode数据 Unicode数据中的每个字符都使用两个字节进行存储 而普通字符数据中的每个字符则使用一个字节进行存储 35 3 常量与变量 一 常量 3 二进制数常量二进制常量使用0 x作为前辍 后面跟随十六进制数字字符串 例如 0 xAE0 x12Ef0 x69048AEFDD010E0 x 空二进制常量 36 3 常量与变量 一 常量 4 bit常量bit常量使用数字0或1表示 如果使用一个大于1的数字 它将被转换为1 5 datetime常量datetime常量使用单引号括起来的特定格式的字符日期值表示 例如 April15 1998 15April 1998 980415 04 15 98 14 30 24 04 24PM 37 3 常量与变量 一 常量 6 整型常量由正 负号和数字0 9组成 正号可以省略 例如 18942 145345234 21474836487 decimal常量由正 负号 小数点 数字0 9组成 正号可以省略 例如 1894 12042 0 145345234 2234 2147483648 10 38 3 常量与变量 一 常量 8 float和real常量使用科学记数法表示 例如 101 5E50 5E 2 123E 3 12E59 money常量以可选小数点和可选货币符号作为前缀的一串数字 可以带正 负号 例如 12 542023 14 45 56 423456 99 39 3 常量与变量 二 变量 变量是可以保存特定类型的单个数据值的对象 SQLServer的变量分为两种 用户自己定义的局部变量和系统提供的全局变量 1 局部变量局部变量的作用范围仅限制在程序的内部 常用来保存临时数据 例如 可以使用局部变量保存表达式的计算结果 作为计数器保存循环执行的次数 或者用来保存由存储过程返回的数据值 40 3 常量与变量 二 变量 1 局部变量的定义格式 DECLARE 局部变量名数据类型 n 说明 局部变量名 必须以 开头 符合标识符的命名规则数据类型 系统定义的数据类型 用户定义数据类型 不能是text ntext或image数据类型 局部变量定义后初始值为NULL 41 3 常量与变量 二 变量 1 局部变量的定义 例 定义变量 MyCounter为int类型 DECLARE MyCounterint 例 定义变量 LastName为nvarchar 30 类型 定义变量 FirstName为nvarchar 20 类型 定义变量 State为nchar 2 类型 DECLARE LastNamenvarchar 30 FirstNamenvarchar 20 Statenchar 2 42 3 常量与变量 二 变量 2 局部变量的赋值 1 用SET语句给局部变量赋值格式 SET 局部变量名 表达式 例4 6 定义局部变量 myvar 并为其赋值 最后显示 myvar的值 DECLARE myvarchar 20 SET myvar Thisisatest 用SET赋值PRINT myvar 用PRINT语句显示 43 3 常量与变量 二 变量 2 用SELECT语句给局部变量赋值 格式 SELECT 局部变量名 表达式 n 例4 7 定义局部变量 myvar1和 myvar2 并为它们赋值 最后显示 myvar1和 myvar2的值 DECLARE myvar1char 20 myvar2char 20 SELECT myvar1 Hello myvar2 Howareyou 用SELECT赋值SELECT myvar1 myvar2 用SELECT显示 44 3 常量与变量 二 变量 2 全局变量是SQLServer系统自带的变量 特点如下 全局变量不是由用户的程序定义的 它们是SQLServer系统在服务器级定义的 作用范围是一个服务器内都有效 全局变量通常用来存储一些配置设定值和统计数据 用户可以在程序中用全局变量来测试系统的设定值或者是Transact SQL命令执行后的状态值 45 3 常量与变量 二 变量 用户只能使用预先定义的全局变量 不能自己定义全局变量 全局变量 必须以标记符 开头 局部变量的名称不能与全局变量的名称相同 否则会出现不可预测的结果 任何程序均可以随时引用全局变量 例如 VERSION用于返回SQLServer当前安装的日期 版本和处理器类型 CONNECTIONS用于返回自上次启动SQLServer以来连接或试图连接的次数 LANGUAGE用于返回当前使用的语言名 46 4 运算符与表达式 一 运算符 SQLServer运算符有以下几类 算术运算符字符串串联运算符赋值运算符关系运算符逻辑运算符位运算符一元运算符 运算符 对常量或变量进行某种运算的符号 由运算符与变量常量构成的式子称为表达式 47 4 运算符与表达式 一 运算符 1 算术运算符 取余 用于返回一个整数除以另一个整数的余数 例如 13 5 3 48 4 运算符与表达式 一 运算符 2 字符串串联运算符 作用 将两个字符串串联起来 构成字符串表达式 例如 abc def 结果为 abcdef 123 456 结果为 123456 49 4 运算符与表达式 一 运算符 3 赋值运算符 例如 DECLARE MyCounterintSET MyCounter 1 50 4 运算符与表达式 一 运算符 4 关系运算符 作用 比较两个表达式的大小 比较结果 布尔值TRUE FALSE UNKNOWNTRUE 表示表达式的结果为真FALSE 表示表达式的结果为假UNKNOWN 当SETANSI NULLS为ON时 带有一个或两个NULL表达式的比较运算返回UNKNOWN 当SETANSI NULLS为OFF时 上述规则同样适用 但当两个表达式都为NULL时 返回结果为TRUE 例如 NULL NULL返回TRUE 51 4 运算符与表达式 一 运算符 5 逻辑运算符 NOTANDOR作用 对具有布尔值的表达式进行运算 运算结果 TRUE FALSE NOT 一元运算符 对布尔表达式的值取反AND 只有两个布尔表达式的值都为TRUE 运算结果才为TRUE 否则结果为FALSE OR 如果两个布尔表达式中的一个为TRUE 那么运算结果为TRUE 只有两个布尔表达式都为FALSE 运算结果才为FALSE 52 4 运算符与表达式 一 运算符 例 NOT 3 8 结果为TRUE 3 8 AND 58 Or 5 6 结果为TRUE 53 4 运算符与表达式 一 运算符 6 位运算符 作用 在两个整型表达式之间执行按位操作 例4 8 判断以下各打印语句的打印结果 1 PRINT2 310 11 结果为二进制10 即打印2 2 PRINT13 2401101 11000 结果为二进制11101 即打印29 3 PRINT13 2401101 11000 结果为二进制10101 结果为21 54 4 运算符与表达式 一 运算符 7一元运算符 按位逻辑非 作用 只对一个表达式执行操作 55 4 运算符与表达式 二 运算符的优先顺序 1 正 负 按位NOT逻辑非 2 乘 除 模 3 加 串联 减 4 关系运算符 5 位异或 位与 位或 6 NOT7 AND8 ALL ANY BETWEEN IN LIKE OR SOME9 赋值 56 5 流程控制语句 流程控制语句用于控制Transact SQL语句 语句块和存储过程的执行流程 如果不使用流程控制语句 则各Transact SQL语句按其出现的先后顺序执行 使用流程控制语句可以按需要控制语句的顺序 一 流程控制语句的作用 57 5 流程控制语句 一 BEGIN END语句 BEGIN END语句用于将多个Transact SQL语句定义成一个语句块 语句块可以在程序中视为一个单元处理 BEGIN END语句的语法如下 BEGIN sql语句 语句块 END其中 sql语句为一条Transact SQL语句 语句块为用BEGIN和END定义的语句块 可以看出 在一个语句块中可以包含另一个语句块 58 5 流程控制语句 二 IF ELSE语句 IF ELSE语句的语法如下 IF布尔表达式 sql语句1 语句块1 ELSE sql语句2 语句块2 布尔表达式 返回TRUE或FALSE的表达式 sql语句 一条Transact SQL语句 语句块 用BEGIN和END定义的语句组 功能 当布尔表达式的值为TRUE时 执行sql语句1或语句块1 当布尔表达式的值为FALSE时 执行sql语句2或语句块2 如果省略ELSE部分 则表示当布尔表达式的值为FALSE时不执行任何操作 59 5 流程控制语句 二 IF ELSE语句 例4 15 已知pubs数据库的图书信息表titles中 表示书价的列为price 表示图书种类的列为type 表示书名的列为title 编程序实现 如果mod cook类图书的平均价格大于 15 就显示文本 Averagetitlepriceismorethan 15 否则给出提示 Thefollowingtitlesareexcellentmod cookbooks 并列出相应的书名 60 5 流程控制语句 二 IF ELSE语句 代码如下 USEpubsIF SELECTAVG price FROMtitlesWHEREtype mod cook 15BEGINPRINT Thefollowingtitlesareexcellentmod cookbooks PRINT SELECTtitleFROMtitlesWHEREtype mod cook ENDELSEPRINT Averagetitlepriceismorethan 15 61 5 流程控制语句 三 CASE语句 1 简单CASE语句CASE输入表达式WHENwhen 表达式THEN结果表达式 n ELSE结果表达式 END功能 计算输入表达式的值 依次与每个WHEN子句中的when 表达式进行比较 直到发现第一个与输入表达式相等的表达式时 便返回该WHEN子句的THEN后面所指定的结果表达式 如果不存在与输入表达式相等的when 表达式 则当指定ELSE子句时将返回ELSE字句指定的结果表达式 若没有指定ELSE子句 则返回NULL值 62 5 流程控制语句 三 CASE语句 例4 16 将pubs数据库中的图书信息表 titles 中的各种图书类型 type列 显示为全称 USEpubsSELECTtitle tpye CASEtypeWHEN popular comp THEN PopularComputing WHEN mod cook THEN ModernCooking WHEN business THEN Business WHEN psychology THEN Psychology WHEN trad cook THEN TraditionalCooking ELSE Notyetcategorized END priceFROMtitles 63 5 流程控制语句 三 CASE语句 2 CASE搜索语句CASEWHEN布尔表达式THEN结果表达式 n ELSE结果表达式 END功能 依次计算每个WHEN子句中的布尔表达式 返回第一个值为TRUE的布尔表达式之后对应的的结果表达式值 如果每一个WHEN子句之后的布尔表达式为都不为TRUE 则当指定ELSE子句时 返回ELSE子句中的结果表达式的值 若没有指定ELSE子句 则返回NULL值 64 5 流程控制语句 三 CASE语句 例4 17 对pubs数据库中的各种价位的图书给予不同的提示 USEpubsSELECTtitle price 价格类别 CASEWHENpriceISNULLTHEN Notyetpriced WHENprice 10andprice 20THEN CoffeeTableTitle ELSE Expensivebook ENDFROMtitles 65 5 流程控制语句 四 WHILE语句 格式 WHILE布尔表达式 sql语句 语句块 功能 从WHILE语句开始 计算布尔表达式的值 当布尔表达式的值为TRUE时 执行循环体 然后返回WHILE语句 再计算布尔表达式的值 如果仍为TRUE 则再执行循环体 直到某次布尔表达式的值为FALSE时 则不执行循环体 而直接执行WHILE循环之后的其他语句 66 5 流程控制语句 四 WHILE语句 在循环体中可以包含语句 BREAK语句执行BREAK语句将完全跳出循环 结束WHILE循环的执行 CONTINUE语句执行CONTINUE语句将使循环跳过CONTINUE语句后面的语句 回到WHILE循环的第一条语句 67 5 流程控制语句 四 WHILE语句 例4 18 求1到100之间的数的和 DECLARE ismallint sumsmallintSET i 1SET sum 0WHILE i 100BEGINSET sum sum iSET i i 1ENDPRINT 1到100之间的数的和为 str sum 68 5 流程控制语句 三 WHILE语句 求1到100之间的奇数的和DECLARE ismallint sumsmallintSET i 0SET sum 0WHILE i 0BEGINSET i i 1IF i 100IF i 2 0CONTINUEELSESET sum sum iELSEBEGINPRINT 1到100之间的奇数和为 str sum BREAKENDEND 69 5 流程控制语句 五 GOTO语句 格式 GOTO标号 标号 功能 用于改变程序的执行流程 使程序直接跳到标有标号的位置处继续执行 而位于GOTO语句和标号之间的语句将不会被执行 说明 标号必须是一个合法的标识符 70 5 流程控制语句 五 GOTO语句 例4 19 利用GOTO语句求1 2 3 50 DECLARE sumint countintSET sum 0SET count 1label 1 SET sum sum countSET count count 1IF count 50GOTOlabel 1PRINTstr count str sum 71 5 流程控制语句 六WAITFOR语句 格式 WAITFOR DELAY 时间 TIME 时间 功能 用于暂时停止SQL语句 语句块或者存储过程等的执行 直到所设定的时间已过或者所设定的时间已到才继续执行 说明 DELAY 使用该关键字表示其后的时间应为时间间隔 该时间间隔最长可达24小时 TIME 使用该关键字表示其后的时间用于指示要等待到的时间点 格式为 hh mm ss 72 5 流程控制语句 六WAITFOR语句 例4 20 在一分钟以后打印 HELLO 代码如下 BEGINWAITFORDELAY 00 00 30 PRINT HELLO END 例4 21 在晚上10 20时打印 HELLO BEGINWAITFORTIME 22 20 PRINT HELLO END 73 5 流程控制语句 七RETURN语句 格式 RETURN 整数表达式 功能 用于无条件地终止一个查询 存储过程或者批处理 当执行RETURN语句时 位于RETURN语句之后的程序将不会被执行 说明 RETURN 在存储过程中可以在RETURN后面使用一个具有整数值的表达式 用于向调用过程或应用程序返回整型值 74 5 流程控制语句 七RETURN语句 例子 BEGINWAITFORDELAY 00 00 30 RETURNPRINT HELLO END 75 6 注释 一注释的作用 注释用于对代码行或代码段进行说明 或暂时禁用某些代码行 注释是程序代码中不执行的文本字符串 使用注释对代码进行说明 可以使程序代码更易于理解和维护 注释通常用于说明代码的功能 描述复杂计算或解释编程方法 记录程序名称 作者姓名 主要代码更改的日期等 向代码中添加注释时 需要用一定的字符进行标识 SQLServer支持两种类型的注释字符 76 6 注释 二注释的方法 1 这种注释字符可与要执行的代码处在同一行 也可另起一行 从双连字符开始到行尾均表示注释 对于多行注释 必须在每个注释行的开始使用双连字符 例4 22 使用双连字符给程序添加注释 打开pubs数据库USEpubs 从titles表中选择所有的行和列 按title id列的升序排序SELECT FROMtitlesORDERBYtitle idASC 77 6 注释 二注释的方法 2 可与代码处在同一行 也可另起一行 甚至用在可执行代码内 从 到 之间的全部内容均为注释部分 对于多行注释 必须使用 开始注释 使用 结束注释 注释行上不应出现其它注释字符 例4 23 使用 给程序添加注释 打开pubs数据库 USEpubs 从titles表中选择所有的行和列按title id列的升序排序 SELECT FROMtitlesORDERBYtitle idASC 78 7 函数 一 函数的定义 函数是一个Transact SQL语句的集合 每个函数用于完成某种特定的功能 可以在其他的Transact SQL语句中直接使用 调用 SQLServer2000支持两种类型的函数 1 内置函数 SQLServer内部已经定义好的函数 用户只能按照内置函数定义好的方式进行使用 而不能对内置函数进行修改 2 用户定义函数 用户使用CREATEFUNCTION语句自己创建的函数 79 7 函数 一 函数的定义 T SQL提供了用户定义函数创建语句CREATEFUNCTION 其语法格式为 CREATEFUNCTION schema name function name 定义函数名 parameter name AS type schema name parameter data type 定义形参 default 定义默认值 n RETURNSreturn data type 定义函数返回数据类型 WITH n 定义函数选项 AS BEGINfunct
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 临时接管物业协议书
- 专利委托保密协议书
- 兄弟同意分家协议书
- 兄弟土地遗产协议书
- 交道事故调解协议书
- 两校合作签约协议书
- 供水二次加压设备选型与配置方案
- 高标准农田土地综合利用与增值方案
- 中学手机管理协议书
- 厨余垃圾运输成本控制与优化方案
- 污水处理厂突发事件应急预案改进方案
- 2025美国心脏协会心肺复苏(CPR)与心血管急救(ECC)指南解读课件
- 2025年上半年信息技术处理员考试试题及答案
- 小学二年级安全消防课件
- 韶山研学课件
- 新版2026统编版小学道德与法治三年级上册 第4课《 科技力量大》第1课时 科技改变生活和科技改变观念 教学课件
- 城市地理学7-城市规模分布理论-课件
- 保险代理人资格考试要点
- 气排球临场裁判及配合
- 卖身契合同范本-借款卖身契合同
- 预防性侵工作方案
评论
0/150
提交评论