版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、回顾回顾事务事务 数据库备份和恢复是两个相对应的操作。备份是对数数据库备份和恢复是两个相对应的操作。备份是对数据库或事务日志进行复制,恢复是将数据库备份重新据库或事务日志进行复制,恢复是将数据库备份重新加载到系统中的过程。加载到系统中的过程。 SQL Server支持支持完全备份、事务日志备份、差异备份完全备份、事务日志备份、差异备份、文件和文件组备份、文件和文件组备份4种数据库备份类型。提供了种数据库备份类型。提供了3种种数据库恢复模型:数据库恢复模型:简单恢复、完全恢复、大容量日志简单恢复、完全恢复、大容量日志记录恢复记录恢复。恢复模型决定总体备份策略。恢复模型决定总体备份策略数据库原理与
2、应用数据库原理与应用第第16讲讲 T-SQL编程编程提纲提纲重点重点掌握表达示、运算符、流程控制语句(顺序执行、条件分掌握表达示、运算符、流程控制语句(顺序执行、条件分支、循环和跳转)。支、循环和跳转)。难点:难点:系统内置函数,分支、循环系统内置函数,分支、循环1:T-SQL概述概述T-SQL语言: l SQL是结构化查询语言,大多数数据库供应商都支持SQL语言。l Microsoft公司采用Transact-SQL作为SQL Server的核心组件,简称T-SQL。l 注意:在T-SQL中,命令和语句的写书不区分大小写的。T-SQL语言包括:l 数据定义语言(DDL):定义和管理数据库及其
3、对象,例如Create、Alter和 DroP等语句。l 数据操作语言(DML):实现对数据库表各对象的操作,例如Insert、Update、Delete和 Select语句。l 数据控制语言(DCL):实现对数据库进行安全管理和权限管理等控制,例如Grant、Revoke、Deny等语句。l 附加的语言元素:包括变量、运算符、函数、注释和流程控制语句等。SQL Server 2008T-SQL编程基础编程基础数据类型l 具有数据类型的对象有:u表和视图中的列。u存储过程中的参数。u变量。u函数返回值。u具有返回代码的存储过程。l 数据类型包括:u系统数据类型:u自定义数据类型:是在系统数据类
4、型基础上建立的数据类型。SQL Server 2008T-SQL编程基础编程基础v 表达式l 表达式是指由常量、变量、函数等通过运算符按一定的规则连接起来的有意义的式子。l 常量:u常量,是表示一个特定数据值的符号,在程序运行过程中其值保持不变,也称为文字值或标量值。l 变量:u变量是指在程序运行过程中其值可以发生改变的量。l 函数:u函数是用来完成某种特定功能,并返回处理结果的一组T-SQL语句;u处理结果称为“返回值”,处理过程称为“函数体”。SQL Server 2008T-SQL编程基础编程基础(自己掌握自己掌握)v 表达式l 常量类型:u常用类型常量表一:SQL Server 200
5、8常量类型数据类型说明字符串常量CharvarCharTextl用单引号括起,并包含字母、数字字符(az、AZ和09)以及特殊字符。l如果单引号中的字符串本身包含单引号,可以使用两个单引号表示嵌入的一个单引号。l空字符串用中间没有任何字符的两个单引号表示。lUnicode字符串的格式要加前缀N,且N必须大写。例如:NMike。数值常量IntDecimalFloatReall由没有用引号括起来的数字字符串来表示。lDecimal常量包含小数点。lFloat和 Real常量使用科学记数法来表示。T-SQL编程基础编程基础(自己掌握自己掌握)v 表达式l 常量类型:u常用类型常量表二:SQL Ser
6、ver 2008常量类型数据类型说明日期时间常量DatetimeDateTimel使用特定格式的字符日期时间值来表示,并被单引号括起来。例如12/5/2010,May 12,2008,21:14:20等。二进制常量BinaryvarBinaryl用加前缀Ox的十六进制形式表示,注意Ox是两个字母。例如 Ox12A,OxBF等。Bit常量Bitl用不加引号的数字0和1表示,如果使用大于1的数字则转换为1。T-SQL编程基础编程基础v 表达式l 变量分类:u局部变量局部变量由用户定义,一般出现在批处理、存储过程和触发器中,其作用范围仅在程序内部。局部变量必须先声明,后使用。DECLARE变量声明语
7、句,其语法格式为:DECLARE 变量1 AS 数据类型, , 变量n AS 数据类型u 说明:局部变量名称必须以开头。指定变量的数据类型,可以是系统提供的数据类型或用户自定义数据类型;对于字符型变量,还可以指定长度;数值型变量,指定精度和小数位数。赋初值NULL。SQL Server 2008T-SQL编程基础编程基础u局部变量赋值SELECT赋值语句,其语法格式为:SELECT 变量1=表达式1,变量2=表达式2,变量n=表达式nl SELECT 变量1,变量2,变量n语句可以显示变量的值。SET赋值语句,其语法格式为:SET 变量=表达式SET语句与SELECT语句在为变量赋值的区别在于
8、: 一条SET赋值语句只能给一个变量赋值。 一条SELECT语句可以给多个变量赋值。 注意: 当只给一个简单变量赋值时,使用SET赋值语句。 当通过查询返回的结果给变量赋值时,使用SELECT赋值语句。SQL Server 2008T-SQL编程基础编程基础v 表达式l 变量分类:u全局变量全局变量由SQL Server系统定义,通常用来跟踪服务器范围和特定会话期间的信息,不能被用户显式地定义和赋值。 全局变量名以开头。 u常用的全局变量SQL Server 2008全局变量说明全局变量说明error上一条SQL语句报告的错误号nestlevel当前存储过程或触发器的嵌套级别rowcount上
9、一条SQL语句处理的行数servername本地服务器的名称identity最后插入的标识值spid当前用户进程的会话idfetch_status上一条游标Fetch语句的状态cpu_busySQL Server自上次启动后的工作时间T-SQL编程基础编程基础v 表达式l 函数分类:u系统内置函数 SQL Server提供了大量系统内置函数; 主要可分为以下几类:数学函数字符串函数日期函数convert函数聚合函数u用户自定义函数SQL Server 2008T-SQL编程基础编程基础(同学们自己理解)(同学们自己理解)v 表达式l 系统内置函数:u数学函数:数学函数用来实现各种数学运算,要求
10、操作数为数值型数据。u常用的数学函数一: ABS(数值表达式):返回指定数值表达式的绝对值。 ROUND(数值表达式,长度,类型):返回一个舍入到指定长度或精度的数值。类型为0,表示舍入,类型为非0,表示截断。 POWER(数值表达式,指数):返回指定表达式的指定幂的值。例如求4的3次幂,使用POWER(4,3),返回64。SQL Server 2008T-SQL编程基础编程基础(同学们自己理解)(同学们自己理解)v 表达式l 系统内置函数:u常用的数学函数二: SQRT(数值表达式):返回指定表达式的平方根。 SQUARE(数值表达式):返回指定表达式的平方。 EXP(数值表达式):返回以e
11、为底的指定表达式的指数值。例如求 ,使用EXP(2),返回7.389056。 LOG(数值表达式):返回指定表达式的自然对数。SQL Server 20082eT-SQL编程基础编程基础(同学们自己理解)(同学们自己理解)v 表达式l 系统内置函数:u常用的数学函数三: LOG10(数值表达式):返回指定表达式的以10为底的对数。 SIN(数值表达式):返回指定角度(以弧度为单位)的三角正弦值。 COS(数值表达式):返回指定角度(以弧度为单位)的三角余弦值。SQL Server 2008T-SQL编程基础编程基础(同学们自己理解)(同学们自己理解)v 表达式l 系统内置函数:u字符串函数:字
12、符串函数对字符串进行处理,返回字符串或数值。u常用的字符串函数一: ASCII(字符表达式):返回字符表达式中最左侧的字符的ASCII代码值。 CHAR(整型表达式):将整数按ASCII代码转换为字符。 LEFT(字符表达式,整型表达式):函数返回字符串中从左边开始的指定个数的字符。 RIGHT(字符表达式,整型表达式):函数返回字符串从右边开始的指定个数的字符。SQL Server 2008T-SQL编程基础编程基础(同学们自己理解)(同学们自己理解)v 表达式l 系统内置函数:u常用的字符串函数二: LTRIM(字符表达式):返回删除了前导空格字符后的字符串。 RTRIM(字符表达式):截
13、断所有尾部空格后返回一个字符串。 LOWER(字符表达式):将字符表达式中的大写字符转换为小写字符。 UPPER(字符表达式):将字符表达式中的小写字符转换为大写字符。SQL Server 2008T-SQL编程基础编程基础(同学们自己理解)(同学们自己理解)v 表达式l 系统内置函数:u常用的字符串函数三: SUBSTRING(字符表达式,起始点,n):返回字符表达式中从“起始点”开始的n个字符的子串。 LEN(字符表达式):返回指定字符串的长度,不计字符串后的空格。 STR(浮点表达式,长度,小数):返回由数字数据转换来的字符数据。SQL Server 2008T-SQL编程基础编程基础(
14、同学们自己理解)(同学们自己理解)v 表达式l 系统内置函数:u日期和时间函数:日期和时间函数处理日期和时间,返回日期或时间值、数字或字符串。u常用的日期时间参数:SQL Server 2008日期时间元素缩写含义日期时间元素缩写含义yearyy,yyyy年hourhh时monthm,mm月minutemi分dayd,dd日quarterqq刻dayofyeardy年的天数secondss秒weekwk星期数millisecondms毫秒weekdaydw星期几T-SQL编程基础编程基础(同学们自己理解)(同学们自己理解)v 表达式l 系统内置函数:u常用的日期和时间函数一: GETDATE(
15、):返回当前的日期和时间。 YEAR(日期):返回指定日期的“年”部分的整数。 MONTH(日期):返回指定日期的“月”部分的整数。 DAY(日期):返回指定日期的“日”部分的整数。SQL Server 2008T-SQL编程基础编程基础(同学们自己理解)(同学们自己理解)v 表达式l 系统内置函数:u常用的日期和时间函数二: DATEPART(日期元素,日期):返回日期元素指定的日期部分的整数。 DATENAME(日期元素,日期):以字符串的形式返回日期元素指定时间的日期名称。 DATEDIFF(日期元素,日期1,日期2):返回两个日期间的差值并将其转换为指定日期元素的形式。 DATEADD
16、(日期元素,数值,日期):按照“日期元素”给定的日期单位,返回“日期”加上“数值”的新日期。SQL Server 2008T-SQL编程基础编程基础(同学们自己理解)(同学们自己理解)v 表达式l 系统内置函数:u数据类型转换方式 隐式转换:例如执行123456时,系统会自动地将456转换为Integer数据类型。 显式转换:使用CONVERT函数。SQL Server 2008T-SQL编程基础编程基础(同学们自己理解)(同学们自己理解)v 表达式l 系统内置函数:u数据类型转换函数: CONVERT函数 格式:CONVERT(数据类型(长度),表达式,n) 说明:函数中最后的参数n是可选的
17、,用于日期时间型数据类型和字符数据类型的转换,取值见下表: SQL Server 2008不带世纪数位带世纪数位格式1101mm/dd/yyyy2102yy.mm.dd3103dd/mm/yyyy4104dd.mm.yy5105dd-mm-yy8108hh:mi:ss20或120yyyy-mm-dd hh:mi:ss(24h)T-SQL编程基础编程基础(同学们自己理解)(同学们自己理解)v 表达式l 系统内置函数:u常用的聚集函数: COUNT( ) SUM ( ) AVG ( ) MAX ( ) MIN ( )SQL Server 2008T-SQL编程基础编程基础(同学们自己理解)(同学们
18、自己理解)v 运算符l 运算符是将变量、常量和函数连接起来并指定在一个或多个表达式中执行的操作。l SQL Server 2008提供七种类型的运算符:SQL Server 2008运算符类型运算符算术运算符+(加)、-(减)、*(乘)、/(除)、%(取余)字符串运算符+(连接)比较运算符=(等于)、(大于)、=(大于等于)、(小于)、=(小于等于)、(或!=,不等于)、!(不大于)、!、=、=、(!=),!、!(比较运算符)5NOT6AND7All、Any、Between、In、Like、Or、Some8=(赋值)流程控制语句流程控制语句v 流程控制语句l 控制程序执行顺序的语句。v 程序执
19、行顺序为:l 顺序执行l 条件分支l 循环和跳转SQL Server 2008流程控制语句流程控制语句v 顺序语句:l SELECT输出语句uSELECT作为输出使用时的语法如下:SELECT SELECT 表达式表达式1,1,表达式表达式2,2,表达式表达式nnl PRINT输出语句uPRINT用于向屏幕输出信息,其语法如下:PRINT PRINT 表达式表达式SQL Server 2008流程控制语句流程控制语句v 顺序语句:l 注释语句u注释语句是对程序的说明解释,增加程序的可读性。 单行注释格式: - 注释信息单行注释常跟在一条语句后。 多行注释格式: /*注释 信息*/ 包含在“/*
20、 ”、“*/”的注释信息可以是多行的SQL Server 2008流程控制语句流程控制语句v 分支语句:l IF.ELSE语句u具体的语法格式如下:IF IF 逻辑表达式逻辑表达式 1ELSEELSE逻辑表达式逻辑表达式 2u功能: 当逻辑表达式成立时,顺序执行语句块1中的各语句,否则顺序执行语句块2中的各语句。其中ELSE子句是可选的。SQL Server 2008流程控制语句流程控制语句v 分支语句:l IF.ELSE语句u说明: 语句块由BEGINEND包含的多条T-SQL语句组成。 关键字BEGIN、END必须成对出现。 BEGINEND允许嵌套。 IFELSE语句中不止包含一条语句时
21、,必须使用BEGINEND语句块。 可以在IF之后或ELSE之后,嵌套另一个IF语句。SQL Server 2008流程控制语句流程控制语句v 分支语句:l CASE函数uCASE函数提供了比IF.ELSE结构更多选择和判断的机会。u使用CASE函数可以很方便地实现多种选择情况,从而避免编写多重IF.ELSE嵌套。u 简单CASE函数: 语法如下:CASE CASE 输入表达式输入表达式 WHEN WHEN 表达式值表达式值1 THEN 1 THEN 返回表达式返回表达式1 1 WHEN WHEN 表达式值表达式值2 THEN 2 THEN 返回表达式返回表达式2 2 ELSE ELSE 返回
22、表达式返回表达式nnENDEND 功能:计算CASE输入表达式,将其值按指定顺序与WHEN表达式的值进行比较运算。SQL Server 2008流程控制语句流程控制语句v 分支语句:l CASE函数u CASE搜索函数: 语法如下:CASE CASE WHEN WHEN 逻辑表达式值逻辑表达式值1 THEN 1 THEN 返回表达式返回表达式1 1 WHEN WHEN 逻辑表达式值逻辑表达式值2 THEN 2 THEN 返回表达式返回表达式2 2 ELSE ELSE 返回表达式返回表达式nnENDEND 功能:按指定顺序对每个WHEN子句求逻辑表达式的值。SQL Server 2008流程控制语句流程控制语句v 循环语句:l WHILE语句u语法如下:WHILE WHILE 逻辑表达式逻辑表达式BEGINBEGIN BREAKBREAKCONTINUECONTINUEENDENDu功能: WHILE命令在设定的条件为真时会重复执行命令行或程序块。 CONTINUE命令使程序跳过CONTINUE命令之后的语句,回到WHILE循环的第一行命令。 BREAK命令则让程序无条件跳出循环,结束WHILE命
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026河南郑州大学影视创研中心招聘3人考试备考试题及答案解析
- 2026广东东莞中学洪梅学校招聘在编教师7名考试备考题库及答案解析
- 四川中烟工业有限责任公司2026年度高层次人才招聘考试备考试题及答案解析
- 2026福建兴银理财春季社会招聘考试备考题库及答案解析
- 2026北京建筑大学第一批次聘用制岗位招聘16人考试参考题库及答案解析
- 2026河北廊坊市中级人民法院招聘劳务派遣人员2名考试参考题库及答案解析
- 2026年云南省影视协会招聘工作人员(2人)考试备考试题及答案解析
- 2026年彭泽县红光港管理服务中心招聘海关协管员考试参考试题及答案解析
- 2026年靖宇县公开招聘城市社区工作者专职岗位人员(12人)笔试参考题库及答案解析
- 2026北京海淀区妇幼保健院人才招聘考试备考试题及答案解析
- 智慧健康养老服务与管理专业教学标准(高等职业教育专科)2025修订
- 珠宝首饰售后服务与保修合同
- 2025年广东省惠州市惠城区中考一模英语试题(含答案无听力原文及音频)
- 煤矿皮带输送机跑偏原因和处理方法
- 征兵体检超声诊断
- 创伤后应激障碍的心理护理
- 云南省大理白族自治州2025届高三上学期二模考试 英语 含解析
- 医疗项目年度总结模板
- 武器装备科研生产单位保密自检报告
- 南京师范大学中北学院《无机及分析化学实验实验》2023-2024学年第一学期期末试卷
- 2024-2025学年上学期上海六年级英语期末复习卷3
评论
0/150
提交评论