数据库T-SQL语⾔操作(T-SQL语句、数据库、表、视图、索
引)
T-SQL语⾔
按⽤途分四部分
1. 数据定义语⾔(CREATE,DROP,ALTER)
2. 数据操作语⾔(INSERT,DELETE,UPDATE)
3. 数据查询语⾔(SELECT)
4. 数据控制语⾔(GRANT,REVOKE,DENY)
数据类型
1. 系统数据类型
2. ⽤户⾃定义数据类型(建⽴⽅式:a.图形化⽅式 b.命令⽅式)
1use TEST
2EXEC sp_addtype sno,'varchar(10)','nonull'
3EXEC sp_droptype sno
变量
命名规则:
字母、下划线、@或#开头,但不能全为下划线、@或#
不能为“关键字”,不能嵌⼊空格及其他特殊字符,如需使⽤则需要双引号或⽅括号括起
1.局部变量:
由⽤户声明,必须以@开头,只在定义该变量的过程中有效,局部变量必须先声明后使⽤
注意:
第⼀次声明变量时,其值设置为NULL。
局部变量不能使⽤“变量=变量值”的格式进⾏初始化,必须使⽤SELECT或SET语句来设置其初始值。
如果声明字符型的局部变量,⼀定要在变量类型中指明其最⼤长度,否则系统默认其长度为1。
若要声明多个局部变量,请在定义的第⼀个局部变量后使⽤⼀个逗号,然后指定下⼀个局部变量名称和数据类型。
1USE student
2DECLARE@var1char(10),@var2int
3SET@var1='number'
4select@var2=cgrade
5from sc
6where sno='201810010'
7
8print@var1+"s"
2.全局变量:
由系统定义,供SQL server系统内部使⽤的变量,任何程序任何时间都可以调⽤。通常以“@@”开头。
T-SQL语句
1.注释语句
(1) --
(2) /*……*/
2.批处理--GO
3.控制流程语句
(1) d语句(相当于C语⾔中的{} )
(2) if...else语句(可嵌套)
(3)case语句(多条件选择语句)
(4)print语句(屏幕输出语句)
(5)while语句(有条件的循环语句)
(6)goto语句(⽆条件跳转语句)
(7)break语句
(8)continue语句
4.常⽤函数(系统函数、⽤户⾃定义函数)
⼀些系统函数:
(1)字符串函数
(2)数学函数
(3)⽇期和时间函数
(4)聚合函数
注意:
⽤户⾃定义函数:
1.分类:
标量值函数:返回单个值
内联表值函数:返回可更新的表
多语句表值函数:返回不可更新的表
2.标量值函数命令⽅式创建
1CREATE FUNCTION f2(@a real,@b real) 2RETURNS real
3AS
4BEGIN
5IF@a>=@b
6RETURN@a
7RETURN@b
8END
9
10PRINT'最⼤值为'
11PRINT dbo.f2(77,56)
1CREATE FUNCTION f3(@n real)
2RETURNS real
3AS
4BEGIN
5DECLARE@i real,@sum real
6SET@i=0
7SET@sum=0
8WHILE@i<@n
9BEGIN
10SET@i=@i+1
11SET@sum=@sum+@i
12END
13RETURN@sum
14END
15
16PRINT dbo.f3(10)
3.⾃定义函数的调⽤
(1)标量值函数可以使⽤select、print、exec调⽤
(2)表值函数只能⽤select调⽤
4.删除⽅式
drop function 函数名
数据库
数据库概述
1.数据库常⽤对象:
表、数据类型、视图、索引、存储过程、触发器
系统数据库:sql语句替换表中内容
master、model、tempdb、msdb
2.数据库存储结构(数据库⽂件、数据库⽂件组):
数据库⽂件:
存放数据库数据和数据库对象的⽂件。⼀个数据库⽂件只属于⼀个数据库。
(1)主数据⽂件
是数据库的起点,指向数据库中⽂件的其他部分。每个数据库都有⼀个主数据⽂件。主数据⽂件的扩展名是.mdf
(2)次数据⽂件
包含除主数据⽂件外的其他数据⽂件。有些数据库可能没有次数据⽂件,⽽有些数据库则有多个次数据⽂件。次数据⽂件的扩展名是.ndf (3)⽇志⽂件
包含恢复数据库所需的所有⽇志信息。每个数据库必须⾄少有⼀个⽇志⽂件,但可以不⽌⼀个。⽇志⽂件的扩展名是.ldf
数据库⽂件组:
⽂件组允许多个数据库⽂件组成⼀个组,并对它们整体进⾏管理。
⽂件组是将多个数据⽂件集合起来形成的⼀个整体(主⽂件组+次⽂件组)
⼀个数据⽂件只能存在于⼀个⽂件组中,⼀个⽂件组也只能被⼀个数据库使⽤
⽇志⽂件不分组,他不属于任何⽂件组
创建数据库
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论