第九章 T-SQL
第9章_T-SQL_编程
数据定义语言(Data Definition Language,简称DDL) :用来 执行数据库的任务,对SQL Server中的各种对象进行create、 alter、drop等操作的语句。 数据处理语言(Data Manipulation Language,简称DML) : 用来在数据库中操纵各种对象,检索和修改数据,包括select、 update、delect、insert操作的语句。 数据控制语言(Data Control Language,简称DCL) :用来进 行安全性管理,可以确定哪些用户可以查看或修改数据,一般 是指专门用来设置数据库对象使用权限的语句,包括grant、 deny、revoke等语句。SQL中,可将DCL将数个SQL语句组合 起来,然后交给数据库系统一并处理,即DTL。 事务处理语言(Data Transaction Language,简称DTL) :完 成事务控制的语句。
局 部 变 量 : 用 DECLARE 语 句 声 明 并 且 由 SET 语 句 或 SELECT语句赋值,它只能用在声明该变量的过程体内,名字 由一个@符号开始。
第9章 T-SQL 编程
全局变量
全局变量(global variable,以@@为名称开头)是由 SQL Server系统提供及赋值,用来保存一些系统的信息, 由系统提供且预先声明的用来保存SQL Server系统运行 状态数据值的变量。用户不能建立全局变量,也不可能 使用SET语句去修改全局变量的值。通常应该将全局变 量的值赋给在同一个批中的局部变量,以便保存和处理。 全局变量分为两类: 与连接有关的全局变量,如:@@rowcount(影响的 行数);
第9章 T-SQL 编程
类型 名称
T-SQL简介及基本语法
T-SQL简介及基本语法⼀、T-SQL概述SQL Server⽤于操作数据库的编程语⾔为Transaction-SQL,简称T-SQL。
T-SQL与PL/SQL不同,并没有固定的程序结构。
T-SQL包括以下4个部分:DDL:定义和管理数据库及其对象,例如create、alter和drop等。
DML:实现对数据库表各对象的操作,例如insert、update等。
DCL:数据控制语⾔,实现对数据库进⾏安全管理和权限管理等控制,例如grant、revoke、deny等。
附加的语⾔元素。
T-SQL的附加语⾔元素,包括变量、运算符、函数、注释和流程控制语句等。
在T-SQL中,命令和语句的书写是不区分⼤⼩写的。
⼆、T-SQL编程基础1、标识符①T-SQL规则标识符由字母、数字、下划线、@、#、$符号组成,其中字母可以是a-z或A-Z,也可以是来⾃其他语⾔的字母字符。
⾸字符不能为数字和$。
标识符不允许是T-SQL保留字。
标识符内不允许有空格和特殊字符长度⼩于128②界定标识符 对于不符合标识符规则的标识符,则要使⽤界定符⽅括号([])或双引号(“”)将标识符括起来。
如标识符[My Table]、“select”内分别使⽤了空格和保留字select。
2、数据类型在SQL Server中提供了多种系统数据类型。
除了系统数据类型外,还可以⾃定义数据类型。
①系统数据类型(1)精确数字数据类型int 存储整型数值,存储数值范围为-231~231-1。
bigint bigint⽐int能存储更⼤的数值,存储数值范围为-263~263-1。
smallint 数据类型的范围数值⽐int更⼩,在-215~215-1之间。
定义这种数据类型的时候⼀定要⼩⼼,要确定存储的数据不会超过smallint所能存储的数值范围。
tinyint 数据类型的范围数值⽐smallint更⼩,存储从 0 到 255 的整型数据。
decimal/numeric decimal[(p,s)]和numeric[(p,s)]这两种数据类型⽤于存储相同精度和范围的数据(⼩数点的左、右两边存储的数值位数相同),所能存储的数值范围为-1038+1~1038-1。
第九章-T-SQL语言
9.1.3 注释
注释,也称为注解,是写在程序代码中的说明性文字,对程序的结 构及功能进行文字说明。注释内容不被系统编译,也不被程序执行。 注释还可以用于描述复杂的计算或者解释编程的方法。 1. 行内注释 行内注释的语法格式为: – –注释文本 从双连字符“– –”开始到行尾均为注释,但前面可以有执行的代码。 对于多行注释,必须在每个注释行的开始都是用双连字符。 2. 块注释 块注释的语法格式为: /*注释文本*/ 或: /* 注释文本 */
SQL Server实用教程
2015年7月14日星期二
Page 14
3. 位运算符与位表达式 位运算符可以对整型类型或二进制数据进行按位 与(&)、或(|)、异或(^)、求反(~)等 逻辑运算。对整型数据进行位运算时,首先把它 们转换为二进制数,然后再进行计算。其中与、 或、异或运算需要两个操作数,它们可以是整型 或二进制数据(image数据类型除外),但运算 符左右两侧的操作数不能同时为二进制数据。求 反运算符是一个单目运算符,它只能对int、 smallint、tinyint或bit类型的数据进行求反运 算。
SQL Server实用教程
2015年7月14日星期二
Page 12
9.2.3 运算符与表达式
1. 算术运算符与算术表达式 算术运算符包括加(+)、减(–)、乘(*)、 除(/)、和取模(%)。对于加、减、乘、除 这4种算术运算符,计算的两个表达式可以是数 字数据类型分类的任何数据类型;对于取模运算 符,要求操作数的数据类型为int、smallint和 tinyint。 如果在一个表达式中,出现多个算术运算符,运 算符优先级顺序如下:乘、除、取模运算为同一 优先级,加、减运算优先级为次。
T-SQL
• T-SQL(Transact-SQL)语言是Microsoft SQL(Transact-SQL)语言是Microsoft 公司在SQL Server数据库管理系统中SQL 公司在SQL Server数据库管理系统中SQL 的实现。 • T-SQL语言不但融合了标准SQL语言的优点, SQL语言不但融合了标准SQL语言的优点, 还对其进行扩充,使其功能更加完善,性 能更加优良。
8. 运算符优先级 当一个复杂的表达式有多个运算符时,运算符优先级决定运 算符的先后顺序。
流程控制语句 SET语句 SET语句
SET语句将先前使用DECLARE @local_variable语句创建的局 SET语句将先前使用DECLARE @local_variable语句创建的局 部变量设置为指定值。声明一个变量后,该变量将被初始 化为NULL。使用SET语句将一个不是NULL的值赋给声明的 化为NULL。使用SET语句将一个不是NULL的值赋给声明的 变量。其语法格式为: SET @local_variable= expression 说明:SET语句是顺序执行的,将一个表达式赋给声明的变 说明:SET语句是顺序执行的,将一个表达式赋给声明的变 量。表达式的数据类型一个要和变量声明的数据类型相符。 【例】声明变量数据类型并用SET语句顺序给变量赋值。 声明变量数据类型并用SET语句顺序给变量赋值。 DECLARE @int_a INT DECLARE @char_ch CHAR(10) SET @int_a=15 SET @char_ch='hello world' GO
SQL语言基本概念(标识符) 语言基本概念( 语言基本概念
2. 常量 常量指在程序运行过程中值不变的量。常量又称为文字值 或标量值,表示一个特定数据值的符号。常量的使用格式 取决于值的数据类型。 根据常量值的不同类型,分为字符串常量、二进制常量、 整型常量、实数常量、日期时间常量、货币常量、惟一标 识常量。 3. 变量 变量是指在程序运行过程中值可以改变的量,用于临时存 放数据。变量有名字及其数据类型两个属性,变量名用于 标识该变量,数据类型用于确定该变量存放值的格式及允 许的运算。
第9章 T-SQL
DDL(Data Definition Language) DDL( Language)
DML(Data Manipulation Language) DML( Language) DCL(Data Control Language) DCL( Language)
数据控制语言
9.2 T-SQL基础 T-SQL基础
9.2 T-SQL基础 T-SQL基础
9.2.3 表的操作语句 (1)基本用法 例如, test数据库中创建一个clients表 SQL语句如下: 数据库中创建一个clients 例如,在test数据库中创建一个clients表,SQL语句如下: 语句如下 USE test CREATE TABLE clients ( cid int, cname char(8), address char(50) )
9.2.1 查询分析器 启动SQL查询分析器的操作步骤如下: 启动SQL查询分析器的操作步骤如下: SQL查询分析器的操作步骤如下 (1)在“开始”菜单的“程序”级联菜单中,选择Microsoft SQL Server 开始”菜单的“程序”级联菜单中,选择Microsoft 程序组中的“查询分析器”选项,即可启动SQL查询分析器。 程序组中的“查询分析器”选项,即可启动SQL查询分析器。 SQL查询分析器 (2)在启动SQL查询分析器时,系统首先打开“连接到SQL Server”对话框, 在启动SQL查询分析器时,系统首先打开“连接到SQL Server”对话框, SQL查询分析器时 如下图所示。 如下图所示。
9.2 T-SQL基础 T-SQL基础
(2)段属性参数 常用的属性参数如下: 常用的属性参数如下: NULL和NOT NULL NULL和 PRIMARY KEY UNIQUE
第九章_T-SQL编程与应用1
常量类型 字符串常量
数值常量
Int Decimal Float Real
SQL Server 2008
数据库实用技术
T-SQL编程基础
第九章 T-SQL编程与应用
常量类型 日期时间常量
数据类型 Datetime Date Time
说明 使用特定格式的字符日期时间值来表示,并被单 引号括起来。 例如'12/5/2010','May 12,2008','21:14:20'等。
标识符不允许是T-SQL的保留字。
标识符内不允许有空格和特殊字符。 长度小于128。
SQL Server 2008
数据库实用技术
T-SQL编程基础
第九章 T-SQL编程与应用
9.2.1 T-SQL语言标识符
2.界定标识符:
对于不符合标识符规则的标识符,例如标识符中包含
了SQL Server关键字或者包含了内嵌的空格和其他不
SQL Server 2008
数据库实用技术
9.1 T-SQL概述
第九章 T-SQL编程与应用
2.T-SQL语言包括:
数据定义语言(DDL Data Definition Language ):定义和管理 数据库及其对象,例如Create、Alter和 DroP等语句。
数据操作语言(DML Data Manipulation Language ): 实现对
第九章 T-SQL编程与应用
定义一个基于char数据类型18位长的身份证号数据类型
“IdentifyCard”的自定义数据类型窗口:
SQL Server 2008
数据库实用技术
T-SQL编程基础
SQL语句:T-SQL的用法和语法
T-SQL的基本语句,大部分人都很熟悉了,今天绿茶小编和大家一起来分享一下SQL语句,T-SQL的用法和语法,以及一些例子,目的是帮助大家一起来复习一下T-SQL的基本语句,以便在项目中更快速的运用,当然对于新手来说就更应该去学习和总结了。
我个人感觉数据库这方面对于程序员来说很重要,无论是对于JAVA程序员还是DOTNET程序员以及其他编程人员来说都是必须掌握的。
为了帮助大家更好的来回顾T-SQL,绿茶小编利用空闲的时间整理的一下T-SQL的语句和语法。
希望对大家有用!好的!我们先来看几个图像:棱形三角形正方形圆形矩形梯形上面这些图形都是用T-SQL实现的,文章的最后我们一起来用T-SQL画出这些图形。
首先,我们开始回顾一下T-SQL的基本语法:函数abs(x):求绝对值;例:select abs(-3) 值为:3sqrt(x):求平方根;例:select sqrt(4) 值为:2.0rand([0]):返回0~1之间的随机float值;floor(X):返回小于或等于X值的最大整数;例: select floor(34.5) 值为:34ceiling(X):返回大于或等于X值的最小整数;例:select ceiling(34.5) 值为:35round(x,length):四舍五入函数,length为正,则对X小数位数四舍五入,length为负,则对X从小数点左边length位起四舍五入,若length既为负数且其绝对值大于X整数部分数字个数,则函数值为0;例:select ROUND(63.567, 1) 值为:63.600select ROUND(63.567, -1) 值为:60.000select ROUND(63.567, 0) 值为:64.000select ROUND(63.567, -3) 值为:0.000Sign(X):求符号函数,X>0则sign(x)=1; X=0 则sign(X)=0;X<0 则sign(X)=-1例:select sign(-3) 值为:-1select sign(3) 值为:1select sign(0) 值为:0Power(X,y):求X的y次方;例:select power(4,2) 值为:16字符串函数ASCII(串):返回字符表达式最左端字符的ASCII 码值;例:select ASCII('bc') 值为:98CHAR(ASCII码):用于将ASCII 码转换为字符,如果没有输入0 ~ 255 之间的ASCII 码值,返回值为NULL ;例:select char(97) 值为:aLower(串):把字符串全部转换为小写;例:select lower('QingPingGuo') 值为: qingpingguoUpper(串) :把字符串全部转换为大写;例:select upper('QingPingGuo') 值为: QINGPINGGUOLTrim(串), RTrim(串):去掉左右空格;例(去左空格):select '博客园'+LTrim(' 青苹果 ')+'博客园'值为:博客园青苹果博客园space(个数):返回指定个数的空格;replicate(串,次数):将串重复指定次数;例:select replicate('青苹果',2) 值为:青苹果青苹果Left(串, 个数):返回已知串从左边开始指定个数的字符;例:select left('青苹果在博客园', 4) 值为:青苹果在Right(串, 个数):返回已知串从右边开始指定个数的字符;例:select right('青苹果在博客园', 4) 值为:在博客园DataLength(串):返回串的字节数长度,计算串尾空格。
t-sql 标准
t-sql 标准T-SQL(Transact-SQL)是一种面向关系数据库管理系统(RDBMS)的编程语言,主要用于Microsoft SQL Server。
下面是关于T-SQL标准的基本概念和特性的详细介绍:1. T-SQL基本概念:1.1 定义:T-SQL是Microsoft SQL Server上的一种SQL方言,它扩展了标准的SQL语言,提供了更丰富的功能,包括存储过程、触发器、视图、函数等。
1.2 特点:•过程性编程:T-SQL支持过程性编程,允许开发者创建存储过程、触发器等数据库对象。
•批量操作:提供了丰富的数据操作语句,支持批量处理,提高了效率。
•事务控制:支持事务控制,包括BEGIN TRANSACTION、COMMIT、ROLLBACK 等语句。
2. T-SQL语言特性:2.1 数据查询语言(DQL):T-SQL提供了丰富的查询语言,包括SELECT语句,用于检索数据库中的数据。
SELECT column1, column2 FROM table WHERE condition;2.2 数据操作语言(DML):T-SQL包括INSERT、UPDATE、DELETE等语句,用于对数据库中的数据进行增、删、改操作。
INSERT INTO table(column1, column2) VALUES(value1, value2);2.3 数据定义语言(DDL):T-SQL支持CREATE、ALTER、DROP等语句,用于定义数据库、表结构等。
CREATE TABLE table_name (column1 datatype, column2 datatype, ...);2.4 过程性编程:T-SQL允许创建存储过程、触发器、函数等,以实现更复杂的业务逻辑。
CREATE PROCEDURE procedure_name ASBEGIN--T-SQL statementsEND;2.5 事务控制:T-SQL提供了BEGIN TRANSACTION、COMMIT、ROLLBACK等语句,用于控制事务的开始、提交和回滚。
第9章T-SQL编程
▪4. 局部变量的作用域
▪一个变量的作用域就是可以引用该变量的T-SQL语 句范围。
▪局部变量的作用域从声明它们的地方开始到声明它 们的批处理或存储过程的结尾。换言之,局部变量 只能在声明它们的批处理或存储过程中使用,一旦 这些批处理或存储过程结束,局部变量将自行清除。
变量使用举例
【例1】 创建局部变量@var1、@var2并赋值,然后输 出变量的值。
▪(2) 与C语言相同的程序注释符号,即“/*……*/”, “/*”用于程序注释开头,“*/”用语程序注释结尾, 可以在程序中多行文字标示为注释。
▪9.2 流程控制语句
▪T-SQL提供称为流程控制的特殊关键字,用于控制 T-SQL语句、语句块和存储过程的执行流。
▪与所有的计算机编程语言一样,T-SQL也提供了用 于编写过程性代码的语法结构,可用来进行顺序、 分支、循环、存储过程等程序设计,编写结构化的 模块代码,从而提高编程语言的处理能力。
▪SELECT 学号,姓名, ▪ CASE 专业 ▪ WHEN '计算机' THEN 'Computer' ▪ WHEN ‘通信工程' THEN 'Network' ▪END AS 专业 ▪FROM 学生
▪【例8-11】以CASE格式查询所有学生的考试等级,包 括学号,课程号和成绩级别(a、b、c、d、e)。
▪DECLARE {@local_variable data_type} [,…n]
▪①@local_variable:用于指定变量的名称,变量 名必须以符号@开头,并且变量名必须符合SQL Server的命名规则。
▪②data_type:用于设置变量的数据类型及其大小。 data_type可以是任何由系统提供的或用户定义的数 据类型。
第9章 T-SQL程序设计
SQL Server实用简明教程(第三版)
第3章 T-SQL语言
第13页
9.1.2 常量与变量
常量,是表示一个特定数据值的符号。常量的格式 取决于它所表示的值的数据类型。
字符串常量
►字符串常量括在单引号内并包含字母数字字符 (a-z、A-Z 和 0-9)以及特殊字符,如感叹号 (!)、 at 符 (@) 和数字号 (#)。 ►如果单引号中的字符串包含一个嵌入的引号,可 以使用两个单引号表示嵌入的单引号。 ►'Cincinnati'、 'O''Brien'
在DDL中,主要的语句包括CREATE语句、ALTER 语句、DROP语句。
SQL Server实用简明教程(第三版)
第3章 T-SQL语言
第6页
CREATE语句:用于创建数据库以及数据库中的对 象,例在数据库中创建表
ALTER语句:用于更改数据库以及数据库对象的结 构。ALTER语句的对象必须已经存在。
SQL Server实用简明教程(第三版)
第3章 T-SQL语言
第19页
局部变量的赋值
局部变量的值使用SELECT、UPDATE和SET语句进 行赋值 /*给@int_var赋值*/
DECLARE @int_var int
SELECT @int_var =12 SELECT @int_var
/*输出到屏幕上*/
第9章 T-SQL程序设计
本章概述 本章的学习目标 主要内容
SQL Server实用简明教程(第三版)
第3章 T-SQL语言
第1页
概述
1986年,美国国家标准化组织正式发表了编号为 X3.135-1986的SQL标准,并且在1987年获得了国 际标准化组织(ISO)组织的认可,被命名为 ISO9075-1987。 后来这个标准在1992、1999、2001、2003年等不断 地得到了扩充和完善。
第九章T-SQL基础
1. +(正)、−(负)、~(位反)(一元) 2. *(乘)、/(除)、%(模)(算术) 3. +(加)、(+ 串联)、−(减)(加“加”减) 4. =, >, <, >=, <=, <>, !=, !>, !< ( 比较) 5. ^(位异或)、&(位与)、|(位或)(按位) 6. NOT(“不”) 7. AND(“和”) 8. ALL、ANY、BETWEEN、IN、LIKE、OR、 SOME(逻辑) 低 9. =(赋值)
标识符
P124
标识符用于标识服务器、数据库、数据库对象
(如表、视图等)、变量等。
标识符有两种类型:
常规标识符
分隔标识符
1.常规标识符
长度一般不超过128个字符。
开头字符必须为字母、 _ 、 # 或 @ 之一。 后续字符可以是字母、数字、_、 $ 、 #、 @。 不允许嵌入空格或其它特殊字符。 不允许使用保留字的大小写形式。(CREATE/ and/LOG)大小写不敏感。
建议:见名知意;不易混淆。
注 意
@开头的标识符表示局部变量或参数; @@开头的标识符表示全局变量; #开头的标识符表示临时过程或表; ##开头的标识符表示全局临时对象。
2. 分隔标识符
对于不符合格式规则的标识符,当用于 Transact-SQL语句时,必须用双引号或 方括号括起来。
日期
SQL Server 可以识别的日期格式有三种: 字符格式、数字格式、无分隔字符串格式。 字符格式:’April 15 2005’ 数字格式:’04/15/2005’ ‘15.04.2005’ ‘05-04-15’ 无分隔字符串格式:’20050418’
第九章_T-SQL编程与应用2
数据库实用技术
为什么需要事务
例如,银行转账问题: 假定资金从账户A转到账户B,至少需要两步:
账户A的资金减少 然后账户B的资金相应增加
银行转账 账户A 账户B
数据库实用技术
为什么需要事务
假定张三的账户直接转账1000元到李四的账户
CREATE TABLE bank 创建账户表,存放用户的账户信息 ( customerName CHAR(10), --顾客姓名 currentMoney MONEY --当前余额 ) 添加约束:根据银行规定,账户 GO 余额不能少于1元,否则视为销 ALTER TABLE bank 户 ADD CONSTRAINT CK_currentMoney CHECK(currentMoney>=1) GO 张三开户,开户金额为1000元 ;李四开户,开户金额1元 INSERT INTO bank(customerName,currentMoney) VALUES('张三',1000) INSERT INTO bank(customerName,currentMoney) VALUES('李四',1)
数据库实用技术
为什么需要事务
目前两个账户的余额总和为:1000+1=1001元
数据库实用技术
为什么需要事务
模拟实现转账 :
从张三的账户转账1000元到李四的账户
/*--转账测试:张三转账1000元给李四--*/ 请问: --我们可能会这样这样编写语句 执行转账语句后,张三、李四的账户 --张三的账户少1000元,李四的账户多1000元 余额为多少? UPDATE bank SET currentMoney=currentMoney-1000 WHERE customerName='张三' UPDATE bank SET currentMoney=currentMoney+1000 WHERE customerName='李四' GO --再次查看转账后的结果。 SELECT * FROM bank 张三的账户没有减少 GO 但李四的账户却多了1000元 1000+1001=2001元 总额多出了1000元!
第九章_T-SQL编程与应用
限管理等控制,例如Grant、Revoke、Deny等语句。
附加的语言元素:包括发量、运算符、凼数、注释和流程 控制语句等。
SQL Server 2008
数据库实用技术
T-SQL编程基础
第九章 T-SQL编程与应用
T-SQL语言标识符
规则标识符:
由字母、数字、下划线、@、#和$符号组成,其中字母可
表达式
发量分类:
尿部发量
【例9-2】从Relationer表中,查询RID为“20103541”的记录, 幵为例9-1中声明两个发量@checkid,@name赋值。
DECLARE @name varchar(20),@checkid int SELECT @checkid=RID, @nane=RName FROM Relationer WHERE RID='20103541' SELECT @checkid,@name
• COS(数值表达式):
− 返回指定角度(以弧度为单位)的三角余弦值。
SQL Server 2008
数据库实用技术
T-SQL编程基础
第九章 T-SQL编程与应用
表达式
系统内置凼数:
字符串凼数:字符串凼数对字符串迚行处理,返回字符串或 数值。 常用的字符串凼数一:
• ASCII(字符表达式): − 返回字符表达式中最左侧的字符的ASCII代码值。
以是英文字母a~z或A~Z,也可以是来自其他语言的字母字
符。
首字符丌能为数字和$符号。
标识符丌允许是T-SQL的保留字。
标识符内丌允许有空格和特殊字符。 长度小亍128。
SQL Server 2008
T-SQL语言基础
26
脚本
脚本是存储在文件中的一系列T-SQL语句, 该文件可以在SQL Server Management Studio的SQL编辑器中编写和运行。
CAST('2007-05-08 12:35:29.1234567' AS date) AS date, CAST('2007-05-08 12:35:29.123' AS smalldatetime) AS
smalldatetime , CAST('2007-05-08 12:35:29.123' AS datetime) AS datetime
{ }(大括 号)
必选语法项。不要键入大括号。
[,...n]
指示前面的项可以重复 n 次。各项之间以逗号分隔。
[ ...n]
指示前面的项可以重复 n 次。每一项由空格分隔。
<label> ::=
语法块的名称。此约定用于对可在语句中的多个位置使用的 过长语法段或语法单元进行分组和标记。
21
对象引用规范
25
分隔标识符
分隔标识符包含在双引号(“”)或方括号([]) 内。 符合标识符格式规则的标识符可以分隔,也可以 不分隔。但是,不符合标识符格式规则的标识符 必须进行分隔。例如:
SELECT * FROM [My Table] WHERE [order]=10
--查询My Table表中order属性为10的所有信息
第9章T-SQL程序设计
目录
用户自定义类型的使用
1.查看用户自定义数据类型 可以用系统存储过程sp_help或管理平台来查看 用户定义的数据类型的特征。语法格式: exec sp_help 自定义数据类型名称 2.删除用户定义数据类型 使用过程sp_droptype 来删除一个已经定义且 未被使用的用户自定义数据类型。语法格式: exec sp_droptype 自定义数据类型名 必须注意不能删除正在被表或其他数据库使用 的用户自定义数据类型。
9.2.1 字符串函数
功能:字符串函数用来实现对字符型数据的转换、 查找、分析等操作,通常用做字符串表达式的一 部分。 取子串函数
LEFT(),RIGHT(),SUBSTRING() SELECT LEFT(‘ABC’,2), RIGHT(‘ABC’,2), SUBSTRING(‘ABC’,2,1)
目录
9.1.2 变量
类型
局部变量 局部变量一般在批处理中被声明、定义、赋值和 引用,批处理结束后,局部变量就消失了。 可以保存程序执行过程中的中间数据值,保存由 存储过程返回的数据值等。 全局变量 全局变量在整个SQL Server系统内使用。存储的 通常是一些SQL Server的配置设定值和统计数据。
--This is a comment.Whole line will be ignored. SELECT employee_name, address --查询所有姓钱的员工 FROM employee WHERE employee_name LIKE '钱%'
注释的部分不会被SQL Server执行。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
| REMOVE FILE logical_file_name
--更改给定文件 --更改给定文件 | MODIFY NAME = new_dbname --重命名数据库 --重命名数据库 ( NAME = logical_file_name , FILENAME = 'os_file_name' [ , SIZE = size ] [ , MAXSIZE = { max_size |UNLIMITED } ] [ , FILEGROWTH =growth_increment ] )
新建查询
刷 新
注意字体颜色
练习
创建一个名为 创建一个名为Test的数据库 的数据库 设定数据文件为 D:\DBF\Test.MDF,大小为 大小为 10MB,最大值 最大值50MB,每次增长 每次增长5MB. 最大值 每次增长 事务日志文件 事务日志文件D:\DBF\Test_Log.LDF,大小为 大小为 10MB,最大为 最大为20MB,每次增长 每次增长10%. 最大为 每次增长 . 思考:为什么不建议将数据库文件存在磁盘原 思考: 始分区上? 始分区上?P104
第九章 T-SQ规范 大写 斜体 [ ]
描述 关键字 用户提供的参数 可选语法项,实际使用时不输入 可选语法项, 必选语法项, 必选语法项,实际使用时不输入 括号内的语法项,表示只能选择一个项目, 括号内的语法项,表示只能选择一个项目, 实际使用时不输入 语法块的描述, 语法块的描述,实际使用时不输入
练习:
修改Test数据库的 数据库的Test_Log文件 其最大容 文件,其最大容 修改 数据库的 文件 量为40MB. . 量为
数据库更名为Department 例:把School数据库更名为 数据库更名为
ALTER DATABASE School MODIFY NAME=Department
思考: 思考: 数据库更名后,数据库文件名是否被更改? 1. 数据库更名后,数据库文件名是否被更改? 若未被更改,如何修改数据库文件名? 2. 若未被更改,如何修改数据库文件名?p106
�
{ } |
[, … ,n] 前面的项目可重复n次,每项间用逗号分隔 前面的项目可重复n < >
CREATE DATABASE database_name --建立数据库 --建立数据库 --[ ]内表示可选语法项 实际程序中不输入[] 内表示可选语法项, --[ ]内表示可选语法项,实际程序中不输入[] [ --数据文件 --数据文件 [ ON ( NAME = logical_file_name , --文件的逻辑名 --文件的逻辑名 FILENAME = 'os_file_name' --文件的物理文件名 --文件的物理文件名 --初始大小 --初始大小 [ , SIZE = size ] 逻辑文件名: 逻辑文件名:school [ , MAXSIZE = { max_size |UNLIMITED } ] --最大值 --最大值 -[ , FILEGROWTH D:\DBF\school.MDF 增长增量 物理文件名: 物理文件名: = growth_increment ] ) --增长增量 ] [ LOG ON --日志文件 --日志文件 ( NAME = logical_file_name , FILENAME = 'os_file_name' [ , SIZE = size ] [ , MAXSIZE = { max_size |UNLIMITED } ] [ , FILEGROWTH = growth_increment ] ) ] ]
CREATE DATABASE School ON 数据库, 数据库,并设 ( NAME = School , 定数据文件为 FILENAME "D:\SQL\ School.MDF " D:\SQL\ ='D:\SQL\School.MDF', 大小为10MB, 大小为10MB, SIZE = 10 MB, MAXSIZE = 50MB, 最大为50MB, 最大为50MB, FILEGROWTH =5MB ) 每次增长5MB 5MB. 每次增长5MB. LOG ON 事务日志为 ( NAME = School_Log, D:\SQL\School_Log.LDF", "D:\SQL\School_Log.LDF , FILENAME 大小为10MB, 大小为10MB, ='D:\SQL\School_Log.LDF', SIZE = 10 MB, 最大为20MB, 最大为20MB, MAXSIZE = 20MB, 每次增长为10% 每次增长为10% FILEGROWTH =10% ) 创建一个school 创建一个school
修改数据库
ALTER DATABASE database_name { ADD FILE <filespec> | ADD LOG FILE <filespec> | MODIFY FILE <filespec> }
--添加数据文件 --添加数据文件 --添加日志文件 --添加日志文件 --删除空文件 --删除空文件
使用和删除数据库
使用数据库 USE database_name
删除数据库 DROP DATABASE database_name
判断
物理文件名可以指定压缩文件夹系统中的 目录. 目录. 数据库文件可以创建在磁盘原始分区上. 数据库文件可以创建在磁盘原始分区上. 不限制增长就是说文件的大小没有上限. 不限制增长就是说文件的大小没有上限. CREATE DATEBASE test,没有对数据 , 文件和日志文件进行设置, 文件和日志文件进行设置,表示这个数据 库没有数据文件和日志文件. 库没有数据文件和日志文件.
数据库的School数据文件 数据文件, 例:修改School数据库的 修改 数据库的 数据文件 使增容方式为一次增加2MB. 使增容方式为一次增加 数据库名
ALTER DATABASE School MODIFY FILE ( NAME = School, FILEGROWTH = 2MB )
数据文件名