第5章 SQL SERVER2008高级应用

更新时间:2023-05-29 14:56:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第5章 SQL Server 2008高级应用

数据库系统原理及应用

5.1 Transact-SQL程序设计一.常量 1.字符串常量 字符串常量括在单引号内并包含字母、数字字符(a-z、A-Z 和 0-9)以及特殊字符,如!、@ 和#。 2.数值常量 包括Integer常量、Decimal常量、Float和Real常量如果要 表示一个数是正数还是负数 如: 123.45,5.6

数据库系统原理及应用

3.日期时间常量 日期时间常量使用特定格式的字符日期时间值来表示, 并被单引号括起来,例如‘12/8/2008’,‘December 8, 2008’,‘21:14:20’等。 4.空值 空值是表示值未知,不同于空白或零值,用Null来表示。 比较两个空值或将空值与任何其他值相比均返回未知, 这是因为每个空值均为未知。在往表中添加记录时, 如果不对某一列赋值则系统自动让该列取空值,或者 也可以在Insert语句或Update语句中显式地对某列赋 空值。

数据库系统原理及应用

二.变量 变量是可以对其赋值并参与运算的一个实体,其值在运行过程 中可以发生改变。 变量可以分为全局变量和局部变量两类 全局变量由系统定义并维护,局部变量由用户定义并赋值。

数据库系统原理及应用

1. 全局变量 全局变量由系统定义,通常用来跟踪服务器范围和特定会话期间 的信息,不能被用户显式地定义和赋值,但是我们可以通过访 问全局变量来了解系统目前的一些状态信息

数据库系统原理及应用

SQL Server中较常用的全局变量变量 说明

@@error@@rowcount @@identity @@fetch_status @@nestlevel @@servername @@spid @@cpu_busy

上一条SQL语句报告的错误号上一条SQL语句处理的行数 最后插入的标识值 上一条游标 Fetch 语句的状态 当前存储过程或触发器的嵌套级别 本地服务器的名称 当前用户进程的会话id SQL Server 自上次启动后的工作时间数据库系统原理及应用

2. 声明局部变量 局部变量一般出现在批处理、存储过程和触发器中,必须在使用 前用Declare 语句声明 Declare语句的语法如下: Declare @local_variable [AS] data_type | [ = value ][,…] 注: 名称的第一个字符必须是@。 指定变量的数据类型,可以是系统提供的数据类型或用户自定义 数据类型。对于字符型变量,还可以指定长度;数值型变量, 指定精度和小数位数。赋初值Null

数据库系统原理及应用

使用Set语句或SELECT语句给变量赋值 格式如下: 1)SET @local_variable = expression datetime Declare @num int, @date 2)SELECT @local_variable = expression[,…n] Set @num=2 注: @local_variable是变量的名称, Set @date=Getdate() expression是任何有效的SQL Server表达式,可以是常量、变 或 量、函数和表达式,还可以是子查询。 SELECT与SET不同的是:SELECT可以一次为多个变量赋值。

Select @num=2, @date=Getdate()

数据库系统原理及应用

三.运算符Microsoft SQL Server 2008提供了7中类型的运算符: 算术运算符 赋值运算符 字符串串联运算符

位运算符比较运算符 逻辑运算符

一元运算符

数据库系统原理及应用

1.算术运算符

运算符 + * / %

名称 加 减 乘 除 取余

语法 Expression1 + Expression2 Expression1 - Expression2 Expression1 * Expression2 Expression1 / Expression2 Expression1 % Expression2

数据库系统原理及应用

2.赋值运算符 等号 (=) 是唯一的 Transact-SQL 赋值运算符 3. 字符串串联运算符 加号 (+) 是字符串串联运算符,可以用它将字符串串联起来。 例如'good' + ' ' + 'luck'的结果是'good luck'

数据库系统原理及应用

4. 比较运算符

运算符

名称

语法

= > >= <<= <>或!= !> !<

等于 大于 大于等于 小于小于等于 不等于 不大于 不小于

Expression1 = Expression2 Expression1 > Expression2 Expression1 >= Expression2 Expression1 < Expression2Expression1 <= Expression2 Expression1 <> Expression2 Expression1 !> Expression2 Expression1 !< Expression2 数据库系统原理及应用

5. 逻辑运算符运算符 说明

Not AndOr Between…and

对表达式的值取反 与,如果表达式的值都为True,结果为True,否则为False或,如果表达式的值都为False,结果为False,否则为True 如果操作数在某个范围内,结果为True

InLike Exists Any或Some All

如果操作数等于值列表中的任何一个,结果为True如果字符型操作数与某个模式匹配,结果为True 如果子查询结果不空,结果为True 如果操作数与一列值中的任何一个比较结果为True,结果为True 如果操作数与一列值中所有值的比较结果为True,结果为True

数据库系统原理及应用

6. 按位运算符运算符 & | ^ 说明 按位与 按位或 按位异或 语法 Expression1 & Expression2 Expression1 | Expression2 Expression1 ^ Expression2

7. 一元运算符运算符 + ~ 说明 正 负 按位去反 语法 +Numeric_Expression -Numeric_Expression ~ Expression

常用函数1.数学函数

数据库系统原理及应用

2.字符串函数

数据库系统原理及应用

3.日期时间函数 Getdate ( ):返回系统当前的日期和时间 Year ( date ):返回表示指定参数 date 的“年”部分的整数 Month ( date ):返回表示指定参数 date 的“月”部分的整数 Day ( date ):返回表示指定参数date 的“日”部分的整数 Datediff ( datepart , startdate , enddate ):根据指定 datepart参数返回两个指定日期之间的差值 Dateadd (datepart , number , date ):根据datepart参数将 一个时间间隔与指定 date 参数相加,返回一个新的 datetime 值

数据库系统原理及应用

4.Convert函数 Convert函数可以将日期数据类型的表达式强制转换为另一种数 据类型的表达式。 1 101 美国 mm/dd/yyyy 2

102 ANSI yy.mm.dd 语法格式为: 3 103 英国/法国 dd/mm/yy4 104 ) ] dd.mm.yy Convert ( data_type [ ( length 德国 , expression [ , style ] )

参数说明: expression :任何有效的表达式。 data_type :目标数据类型。 length :指定目标数据类型长度的可选整数。 style :用于日期时间型数据类型和字符数据类型的转换。

5 105 意大利 dd-mm-yy 6 106 - dd mon yy 7 107 - mon dd, yy 8 108 - hh:mm:ss - 9 或 109 (*) 默认值 + 毫秒 mon dd yyyy hh:mi:ss:mmmAM(或 PM) 10 110 美国 mm-dd-yy 11 111 日本 yy/mm/dd 12 112 ISO yymmdd - 13 或 113 (*) 欧洲默认值 + 毫秒 dd mon yyyy hh:mm:ss:mmm(24h) 14 114 - hh:mi:ss:mmm(24h)

数据库系统原理及应用

5.2 批处理和流程控制语句一.注释

数据库系统原理及应用

二. 流程控制语句 1.Begin…End语句 用于将多条Transact-SQL语句组成一个语句块,作为 一个整体来执行 语法格式为: Begin sql_statement | statement_block End

数据库系统原理及应用

2.IF…ELSE条件语句 语法格式为: IF Boolean_expression {sql_statement|statement_block} ELSE { sql_statement|statement_block}

数据库系统原理及应用

本文来源:https://www.bwwdw.com/article/4ng4.html

Top