T-SQL程序设计基础.ppt_第1页
T-SQL程序设计基础.ppt_第2页
T-SQL程序设计基础.ppt_第3页
T-SQL程序设计基础.ppt_第4页
T-SQL程序设计基础.ppt_第5页
已阅读5页,还剩166页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第9章T SQL程序设计基础 9 1SQL语言和T SQL语言9 2T SQL的标识符9 3T SQL的数据类型9 4T SQL的运算符及表达式9 6T SQL中的语句9 5T SQL中的变量9 7T SQL函数 SQL与T SQL SQL 结构化查询语言 数据库能够识别指令 执行对应的操作并为程序提供数据的指令集 T SQL是SQL的加强版 T SQL由数据定义语言 DDL 数据操纵语言 DML 数据控制语言 DCL 组成 T SQL语句的语法格式规定 1 语句中的字母大小写均可 2 关键字有特殊用途 定义变量名时不得使用关键字 3 语句中的日期型常量和字符型常量必须用单引号括起来 4 语句中的标点符号必须用英文标点 即半角符号 5 一条语句可以分行写 一行也可以写多条语句 语句末尾不写任何标点 标识符 标识符是指用户在SQLServer中定义的服务器 数据库 数据库对象 变量和列等对象名称 SQLServer标识符分为规则标识符和定界标识符两类 规则标识符规则标识符是严格按标识符命名规则定义的标识符 不需要任何定界符号括起来 定界标识符定界标识符是使用定界符号 或 将标识符括起来的标识符 使用了定界标识符 既可以遵守标识符的命名规则 也可以不遵守标识符命名规则 标识符 标识符命名规则1 标识符必须以字母 下划线 或 开头 2 标识符可以是字母 数字 或 的组合 3 标识符不允许使用保留字 4 标识符不允许使用除 或 之外的其他符号 例如 不能使用空格符号 5 标识符大小写等价 特殊标识符某些以特殊符号打头的标识符在T SQL中具有特殊意义 例如 以 开头的标识符表示临时表 以 开头的标识符表示局部变量 以 开头的标识符表示全局变量 提示 全局变量由系统提供 用户不要定义以 开头的标识符 T SQL数据类型 T SQL数据类型 T SQL数据类型 T SQL数据类型 T SQL数据类型 T SQL数据类型 T SQL数据类型 T SQL数据类型 T SQL运算符和表达式 算术运算运算符 字符串运算运算符 表示两个字符串的连接 关系运算运算符 and or位运算运算符 取反 按位与 按位异或 按位或 优先级 赋值运算 单目运算符 单目运算运算符指只有一个操作数的运算符 包括 正 负 和 位反 例如 DECLARE intNumINTSET intNum 10SELECT intNum返回结果为 10 T SQL运算符和表达式 T SQL中的常量和变量 常量是指在程序运行过程中 其值不会改变的量 字符型常量如 abcde 整型常量如 11 70 1200等实型常量如 3 14 3 5等日期型常量如 6 25 83 may192000等货币常量如 1000等变量是指在程序运行过程中 其值会改变的量 常用来保存程序中的输入数据 中间结果和输出数据 变量 变量三要素 变量名 变量类型 变量值 变量按数据类型可划分为 整型数据类型 货币数据类型 实数类型 日期时间类型 字符串类型等变量按作用域范围可划分为 局部变量和全局变量 局部变量 概念 用户自定义的变量 只能在定义它的程序中使用 特点 必须先定义后使用 默认值为NULL 程序中使用时 先赋值再使用 定义方法 declare 变量名数据类型 例如 declare xint 定义一个int型变量 局部变量 赋值方法 SET语句的基本语句格式如下 SET 变量名 表达式SELECT语句格式如下 SELECT 变量名 表达式 FROMWHERE 例如 DECLARE quantityINTSET quantity 210 全局变量 全局变量属于系统变量 不能由用户定义 全局变量不可以赋值 可在任何程序中使用 常用的全局变量有 ERROR 返回最后执行的T SQL语句的错误代码 返回类型为integer ROWCOUNT 返回受上一语句影响的行数 除了DECLARE语句外 其他任何语句都可以改变其值 IDENTITY 返回最后插入的标识值 返回类型为numeric T SQL中的语句 注释语句显示输出语句批处理语句Begin end语句条件语句循环语句返回语句 注释是程序代码中不执行的文本字符串 在SQLServer中 可以使用两种类型的注释字符 用于单行注释 用于多行注释 例如 查询商品信息 SELECT FROM学生 从学生表中查询信息GO 注释 显示和输出语句 1 PRINT语句PRINT语句用来在屏幕上输出相关信息 基本语句格式如下 PRINT anyASCIItext local variable FUNCTION string expr2 select语句一次可输出若干个局部变量值或表达式的值 基本语句格式如下 select 局部变量名1 表达式1 批处理 多条语句作为一个批处理执行时 其语句之间用GO分隔 USE学生 课程 打开数据库GO 一个批处理结束 declare nameIDchar 8 SELECT nameID 学号FROM学生where姓名 李明 select nameIDGO 批处理 例如 USE学生 课程GOCREATEVIEWaw学生asselect from学生GOSELECT FROMaw学生GO BEGIN END语句 BEGIN END语句该语句用于将多条T SQL语句封装起来 构成一个语句块 它用在IF ELSE WHILE等语句中 使语句块内的所有语句作为一个整体被执行 BEGIN END语句可以嵌套使用 BEGIN END的基本语句格式如下 BEGIN SQL语句 语句块 END 条件语句 IF ELSE语句是条件判断语句 其中 ELSE子句是可选的 最简单的IF语句没有ELSE子句部分 IF ELSE的基本语句格式如下 IF SQL语句 语句块 ELSE SQL语句 语句块 IF ELSE语句的执行方式是 如果布尔表达式的值为True 则执行IF后面的语句块 否则 执行ELSE后面的语句块 多分支结构 CASE END表达式格式1 Case测试表达式when常量值1then结果表达式1when常量值2then结果表达式2 when常量值nthen结果表达式n else结果表达式n 1 end功能 根据测试表达式的值得到一个对应值 多分支结构 2 格式二casewhen条件表达式1then语句1when条件表达式2then语句2 when条件表达式nthen语句nelse语句n 1end 例题 例题9 4根据职工的现有工资值 给职工增加工资 将增加后的工资值存入变量 x中 并且输出 x的值 declare salaryint xintset salary 2900set x casewhen salary 1500and salary 2000and salary 2500and salary 3000then salary 1 6else5000endprint x本题的运行结果 4640 3 循环语句 WHILE的基本语句格式如下 while条件表达式begin break continue end 功能 若条件表达式成立 则反复执行begin end之间的语句 1 条件表达式不需要加括号 2 循环可以嵌套使用 3 break语句的作用是无条件跳出本层循环 4 continue语句的作用是结束本次循环 重新判定循环条件 5 break和continue语句常常和if else语句配合使用 例 计算1 2 3 100的和 DECLARE iInt sumIntSELECT i 1 sum 0 可以使用两个SET语句WHILE i 100SELECT sum sum i i i 1PRINT sum注意 循环体内只有一个语句可不用BEGIN END 例题9 5求1 2 3 20 declare sumbigint tbigint iint jintset sum 0set i 1while i 20beginset j 1set t 1while j ibeginset t t jset j j 1endset sum sum tset i i 1endprint sum本题的运行结果 2561327494111820313 Declare iintSet i 0SELECT FROM选课while i 60 beginSELECT FROM选课WHERE成绩 60SELECT 成绩超过60 不需要补考 endelsebeginSELECT FROM选课WHERE成绩 60PRINT 成绩低于60 需要补考 endset i i 1END 返回语句 RETURN语句用于无条件地终止一个查询 存储过程或者批处理 此时位于RETURN语句之后的程序将不会被执行 RETURN语句的基本语句格式如下 RETURN integer expression 其中 参数integer expression为返回的整型值 系统内置函数 如同其他编程语言一样 T SQL语言也提供了丰富的数据操作函数 常用的函数有 数据转换函数 字符串函数 日期和时间函数 数学函数 系统函数 本章首页 函数 询汇总函数1 AVG 2 COUNT 3 MIN 4 MAX 5 SUM 类型转换函数类型转换函数是将表达式的结果从一种数据类型转换为另外一种数据类型 比如将数值类型转换为字符类型等CONVERT 日期格式 字符串函数 字符串函数 续 字符串函数 求字符串字符个数函数能返回给定字符串表达式的字符个数 其中不包含尾随空格 语法 LEN string expression 参数 string expression是要计算的字符串表达式 返回值即字符的个数 为int数据类型 字符串函数 取子串函数LEFT RIGHT 及SUBSTRING 函数都能从字符串中取出子串 只是实现方法不同 返回空格函数SPACE 函数 返回由重复的空格组成的字符串 语法 SPACE integer expression 参数 integer expression是表示空格个数的正整数 如果integer expression为负 则返回空字符串 返回值即是空格字符串 为char数据类型 字符串函数 3 大小写转换函数UPPER 函数将小写字符转换为大写字符LOWER 函数则将大写字符转换为小写字符 删除空格函数LTRIM 和RTRIM 函数分别用于删除字符串的左部空格和右部空格 数字转换字符函数STR 函数 将数字数据转换成字符数据 本章首页 数学函数 1 数学函数 1 返回整数值函数CEILING与FLOOR函数都用于返回数值表达式的整数值 但返回的值不同 乘方运算函数POWER 数值表达式1 数值表达式2 自然指数函数语法 EXP float表达式 求指定的float表达式的自然指数值 返回float型的值 平方根函数语法 SQRT float表达式 求指定的float表达式的平方根 返回float型的值 数学函数 2 产生随机数函数用于返回一个位于0和1之间的随机数 语法 RAND 整数表达式 整型表达式在这里起着产生随机数的起始值的作用 四舍五入函数语法 ROUND 数值表达式 整数 该函数将数值表达式四舍五入成整数指定精度的形式 在这里 整数可以是正数或负数 正数表示要进行运算的位置在小数点后 反之要运算的位置在小数点前 日期和时间函数 1 日期 date 函数涉及与日期计算有关的一些功能 日期和时间函数 1 返回当

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论