第6章 T-SQL程序设计
T-SQL语言基础
查询语句SELECT
流程控制语句
系统内置函数
用户定义函数
SQL指的是结构化查询语言(Structured Query Language),在1986年完成ANSI标准,称为SQL-86,较新的SQL标准是SQL-92,T-SQL标准SQL在SQL Server上实现,应用于SQL Server数据库。它在SQL基础上进行扩充,增强了SQL语言的某些功能,又保持了与标准SQL的兼容性。
下面介绍基础中的四个内容:
一、常量
二、变量
三、数据类型
四、运算符
T-SQL 语言基础
常量
常量是指在程序运行过程中,其值不会改变的量。
字符型常量如:‘abcde’
整型常量如:11,70,1200等
实型常量如:,
日期型常量如:6/25/83,may 19 2000等
货币常量如:$1000 等
变量由用户定义并可赋值的实体。变量有全局变量和局部变量两种。
全局变量:由系统维护和定义,名字由两个@@符号开始。
局部变量:用DECLARE 语句声明并且由SET语句或SELECT语句赋值,它只能用在声明该变量的过程体内,名字由一个@符号开始。
下面主要介绍局部变量的操作。
用 DECLARE 语句声明变量,并用 SET 或 SELECT 语句给其指派值。所有变量在声明后均初始化为 NULL。
变量
局部变量的声明格式为:
DECLARE 局部变量名称数据类型[,局部变量名称数据类型...]
其中:局部变量名称必须以符号“@”开头。必须符合标识符命名规则。
数据类型是任何由系统提供的或用户定义的数据类型。变量不能是 text、ntext 或 image 数据类型。
:要定义变量***@VAR1 、***@VAR2。格式如下:
DECLARE ***@VAR1 CHAR(20),***@VAR2 INT
变量
变量名
数据类型
1. 局部变量赋值格式一:
SET 变量名= 表达式
变量名:是除 cursor、text、ntext 或 image 外
的任何类型变量的名称。
表达式:是任何有效的 SQL Server 表达式
:***@VAR1 、***@VAR2赋值。
格式如下:
SET ***@VAR1 = 'AHJHFDSJF'
SET ***@VAR2 = 123
变量
2. 局部变量赋值格式二:
SELECT 变量名= 表达式或 SELECT子句
:***@VAR1 、***@VAR2赋值。
格式如下:
SELECT ***@VAR1 = 'AHJHFDSJF'
SELECT ***@VAR2 = 123
:定义变量***@vcity,并将pubs例库中,authors表中作者编号( au_id)为“172-32-1176”的作者,所在城市(city)的值赋予它。
SELECT ***@vcity = select city from authors
where au_id = ‘172-32-1176’
如果 SELECT 语句返回多个值,则将返回的最后一个值赋给变量。如果 SELECT 语句没有返回行,变量将保留当前值。
变量
数据类型
数据类型定义列、存储过程参数和局部变量所允许的数据值,它决定了数据的存储格式,代表着不同的信息类型。在SQL Server中数据类型分系统类型和用户自定义类型。
1、系统数据类型
二进制类型: Binary[(n)], varbinary[(n)],
字符型: char[(n)] ,varchar[(n)], text,
日期型: Datetime、smalldatetime
整数型: int、smallint、bigint 或 tinyint
精确数值型: decimal、 numeric
近似数值型: Float、real
货币型: Money、smallmoney
Unicode 字符型:nchar[(n)] ,nvarchar[(n)], ntext,
图形型: Image
特殊类型: Bit、cursor、timestamp、table、uniqueidentifier
数据类型
2、用户自定义数据类型
可以利用sp_addtype 和企业管理器创建用户自定义数据类型,所创建的自定义类型可以用在ALTER DATABASE和CREATE DATABASE 语句中定义数据库列。
:创建不允许空值的用户定义数据类型,名为ssn,基于varchar型,长度11。格式如下:
EXEC SP_ADDTYPE SSN ,’VARCHAR(11)’,N
6、第6章T-SQL程序设计(1) 来自淘豆网m.daumloan.com转载请标明出处.