T-SQL基础和存储过程.ppt
《T-SQL基础和存储过程.ppt》由会员分享,可在线阅读,更多相关《T-SQL基础和存储过程.ppt(74页珍藏版)》请在三一办公上搜索。
1、第六章,T-SQL 基础和存储过程,T-SQL 基础和存储过程,第1讲 T-SQL语言基础,学习要点,T-SQL语言基础存储过程,T-SQL定义、功能、组成定义Transact-SQL(简写为T-SQL)是SQL Server对标准SQL功能的增强与扩充 功能T-SQL可以完成数据库上的各种操作,而且可以编制复杂的例行程序 组成,系统内置函数,语言基础,T-SQL,学习要点,变量显示和输出语句流程控制语句CASE表达式,标识符注 释批处理运算符,语言基础,标识符定义标识符是指用户在SQL Server中定义的服务器、数据库、数据库对象、变量和列等对象名称 分类常规标识符定界标识符,T-SQL,
2、T-SQL语言基础,标识符,常规标识符命名原则标识符长度可以为1128个字符。标识符的首字符必须为Unicode 2.0标准所定义的字母或_、符号。标识符第一个字符后面的字符可以为Unicode Standard 2.0所定义的字符、数字或、#、$、_符号。标识符内不能嵌入空格和特殊字符。标识符不能与SQL Server中的保留关键字同名,返回,SELECT*FROM information,此为常规标识符,标识符,定界标识符实质包含在双引号(“)或者方括号()内的标识符号示例,CREATE table(column1 CHAR(10)NOT NULL PRIMARY KEY,column2
3、INT),表名Table与T-SQL保留字相同,用方括号来分隔,返回,语言基础,注释定义注释是程序代码中不执行的文本字符串。分类-用于单行注释/*/用于多行注释 示例【例6-2】,T-SQL,T-SQL语言基础,注释,【例6-2】使用单行与多行注释,返回,USE studentGO SELECT*FROM information-从表information中查询信息GO/*下面SQL语句查询学生信息*/SELECT*FROM information GO,语言基础,批处理说明多条语句作为一个批处理执行时,其语句之间用GO分隔 示例【例6-3】批处理语句,T-SQL,T-SQL语言基础,USE
4、studentGO CREATE VIEW v_information AS SELECT*FROM informationGO SELECT*FROM v_informationGO,语言基础,运算符算术运算符位运算符比较运算符逻辑运算符,T-SQL,T-SQL语言基础,赋值运算符字符串连接符单目运算符运算符优先级,运算符,算术运算符加(+)减(-)乘(*)除(/)取模(%),返回,运算符,位运算符对整数或二进制数据进行按位逻辑运算例如与(&)或(|)异或()求反()等,返回,运算符,比较运算符用来比较两个表达式的值是否相同 SQL Server支持的比较运算符包括:大于。=等于。=大于等于
5、。不等于。!=不等于。!不大于。!不小于,返回,运算符,逻辑运算符测试条件是否为真,返回TRUE、FALSE或UNKNOW SQL Server支持的逻辑运算符包括:ANDORNOT,返回,运算符,赋值运算符SQL Server中的赋值运算符为等号(=),它将表达式的值赋给一个变量【例6-4】使用赋值运算符。,返回,DECLARE kccj INTSET kccj=80,运算符,字符串连接符实现字符串之间的连接操作【例6-5】实现字符串连接。,返回,SELECT abc+123,返回结果为:abc123,运算符,单目运算符只有一个操作数的运算符包括+(正)、-(负)和(位反)【例6-6】使用单
6、目运算符,返回,DELCLARE intNum INTSET intNum=10SELECT-intNum,返回结果为:-10,运算符,运算符优先级+(正)、-(负)、(按位取反)*、/、%+(加)、+(连接)、-(减)=、=、!=、!和!(比较运算符)(位异或)、&(位与)、|(位或)NOTANDOR、ALL、ANY、BETWEEN、IN、LIKE、SOME=(赋值),返回,语言基础,变量局部变量全局变量,T-SQL,T-SQL语言基础,变量,局部变量指名称以一个字符开始,由用户自己定义和赋值的变量 变量声明变量赋值,返回,局部变量,变量声明DECLARE语句声明变量,并在声明后将变量的值初
7、始化为NULL 基本语句:示例【例6-7】【例6-8】,局部变量,DECLAREvariable_name date_type,variable_name data_type,【例6-7】声明一个datetime类型变量,DECLARE birthday datetime,返回,【例6-8】声明两个变量var1和var2,它们的数据类型分别为int和char,DECLARE var1 INT,var2 CHAR(8),DECLARE语句中可以同时声明多个局部变量,它们相互之间用逗号分隔,返回,局部变量,变量赋值变量声明后,DECLARE语句将变量初始化为NULL,可使用SET语句为变量赋值 基
8、本语句:示例【例6-9】【例6-10】,局部变量,SELECT variable_name=expression FROM WHERE,【例6-9】利用SET语句为所声明的birthday变量赋值,DECLARE birthday datetime SET birthday=2006-4-1,返回,【例6-10】用SELECT语句将Course表中的最高学分赋值给变量maxxf:返回结果:,USE studentDECLARE maxxf INTSELECT maxxf=MAX(c_credit)FROM coursePRINT maxxf,返回,声明maxxf变量,给maxxf变量赋值,输出
9、maxxf的值,5,变量,全局变量指由系统定义和维护,名称以字符开始的变量 注意要点全局变量不是由用户的程序定义的,它们是在服务器级定义的。用户只能使用预先定义的全局变量。引用全局变量时,必须以标记符“”开头局部变量的名称不能与全局变量的名称相同 常用全局变量ERROR【例6-11】ROWCOUNT【例6-12】IDENTITY,返回,【例6-11】使用 全局变量ERROR 在一个 UPDATE 语句中检测限制检查冲突(错误#547)返回结果,USE studentGOUPDATE information SET s_sex=工WHERE s_no=20021003010IF ERROR=54
10、7 PRINT 违反Check约束!,返回,返回最后执行的T-SQL语句的错误代码返回类型为integer,【例6-12】执行 UPDATE 语句并用 ROWCOUNT 来检测是否有发生更改的行 返回结果,USE studentGOUPDATE information SET s_name=张三 WHERE s_no=200200000001 IF ROWCOUNT=0 PRINT 警告:没有数据被更新!,返回,返回受上一语句影响的行数,语言基础,显示和输出语句PRINT语句RAISERROR语句,T-SQL,T-SQL语言基础,显示与输出语句,PRINT语句把用户定义的消息返回客户端 基本语
11、句:示例输出Hello World字符串,显示与输出语句,PRINT any ASCII text|local_variable|FUNCTION|string_expr,PRINT Hello World,显示与输出语句,RAISERROR语句返回用户定义的错误信息 基本语句:示例使用RAISERROR 返回结果,显示与输出语句,RAISERROR(msg_id|msg_str,severity,state),RAISERROR(发生错误,16,1),语言基础,流程控制语句流程控制语句用于控制T-SQL的执行流程BEGINEND语句 条件语句转移语句循环语句返回语句,T-SQL,T-SQL语
12、言基础,流程控制语句,BEGINEND语句 基本语句格式示例:,流程控制语句,BEGINSQL语句语句块END,DECLARE MyVar floatSET MyVar=456.256BEGIN PRINT 变量MyVar的值为:PRINT CAST(MyVar AS VARCHAR(12)END,流程控制语句,条件语句基本语句格式示例:,流程控制语句,IFSQL语句语句块ELSESQL语句语句块,USE studentGOIF EXISTS(SELECT*FROM information WHERE s_name=刘志)PRINT 刘志ELSEPRINT 没有名为刘志的同学,流程控制语句,转
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL 基础 存储 过程
链接地址:https://www.31ppt.com/p-6521724.html