天天看点

SQL server理论知识

T-SQL • T-SQL 是 Microsoft 公司在 SQL Server 中的 SQL-3 标准的实现,是微软对 SQL 的扩展 , 具有 SQL 的主要特点,同时增加了 变量、运算符、函数、流程控制和 注释 等语言元素,使得其功能更加强大。 • T-SQL 对 SQL Server 十分重要, SQL Server 中使用图形界面能够完成的所有功能,都可以利用 T-SQL 来实现。 • 使用 T-SQL 操作时,与 SQL Server 通信的所有应用程序都通过向服务器发送 T-SQL 语句来进行,而与应用程序的界面无关 。

数据定义语言(DDL):

1.create(创建)

2.alter(修改)

3.drop(删除)(针对对象)

数据操作语言(DML)

1.insert(插入)

2.update(更新)

3.delete(删除)(针对对象的内容)

数据查询语言(DQL)

1.select (查询

数据控制语言(DCL)

1.Revoke(撤消)

2.deny(拒绝)

3.grant( 同意、授权

一个数据库包含三种文件:

<1>主数据文件:一个数据库有且只有一个

.mdf           ---主数据库文件

<2>辅助数据文件: 根据需要自由选择,当数据库很大时,可以选择多个。即:0个、1个或多个

.ndf          ---辅数据库文件

<3>日志文件:  用于恢复数据库所需要的事务日志信息,至少1个

.ldf          ---日志数据库文件

SQL创建一个数据库语法格式:

    create database 数据库名

    on primary

  (

  Name=‘逻辑名’,

  Filename=‘文件的存放路径’,

  Size=数据文件的初始大小,

  Maxsize=数据文件的最大大小,

  Filegrowth=文件的增长方式

  )

  Log  on

  (

  Name=‘逻辑名’,

  Filename=‘文件的存放路径’,

  Size=数据文件的初始大小,

  Maxsize=数据文件的最大大小,

  Filegrowth=文件的增长方式

  )

  go

语法格式:

  1.  create database 数据库名

举例:

create database aa  -- 数据库名称: aa

go

2.create database bb      --数据库名称: bb

on primary       --primary 可以省略

(

name='bb',    --主数据文件的逻辑名称

filename='e:\bb.mdf',   --主数据文件的物理存放路径

size=1mb,     --文件初始大小

maxsize=3mb,    --文件最大容量

filegrowth=10%     --文件增长方式(两种方式:<1>百分比,<2>兆字节)

),

(

name='bb_data1',    --辅助文件名称,不能与主数据文件名称相同

filename='e:\bb_data1.ndf',

size=1mb,

maxsize=3mb,

filegrowth=10%

)

log on

(

name='bb_log1',       --日志文件名称,不能与主数据文件、辅助文件的名称相同。

filename='e:\bb_log1.ldf',

size=1mb,

maxsize=3mb,

filegrowth=1mb

)

go

3.create database cc创建数据库时同时创建文件组

on primary

(

name='cc',

filename='e:\cc.mdf',

size=1mb,

maxsize=3mb,

filegrowth=10%

),

filegroup f1

(             

name='cc_data1',

filename='e:\cc_data1.ndf',

size=1mb,

maxsize=3mb,

filegrowth=10%

)

log on

(

name='cc_log1',

filename='e:\cc_log1.ldf',

size=1mb,

maxsize=3mb,

filegrowth=1mb

)

4.举例:.  在已创建的数据库上添加文件组

  alter database bb

  add filegroup f2

--注意:在添加文件组的时候,不能同时向文件组中添加辅助文件。

--两个步骤必须分开来做!!

5.alter database bb添加一个辅助文件,并且添加到文件组中。

add file         --添加一个辅助文件:bb_data2

(

name='bb_data2',

filename='e:\bb_data2.ndf',

size=5mb,

maxsize=12mb,

filegrowth=5%

)

to filegroup f2      --把辅助文件bb_data2添加到文件组f2中。

go

--注意两个步骤要同时进行!

6.alter database cc添加一个日志文件

add log file  --用log file来指明添加的是日志文件!

(

name='cc_log1',

filename='e:\cc_log1.ldf',

size=2mb,

maxsize=6mb,

filegrowth=10%

)

go

    7.alter database 数据库名.   添加一个辅助文件

  add  file

  (

  name=‘逻辑名’,  

  filename=‘文件存放的路径’,

    size=初始大小, 

    maxsixe=最大大小,

  filegrowth=增长方式

  )

8.修改数据库的属性 u 1> 修改数据库的名称

语法: alter database 原数据库名

   modify name=新数据库名

【例】将数据库aa的名字改为aa1

      alter database aa

      modify name=aa1

注意:查询数据库信息 :  sp_helpdb数据库名

u 2> 修改数据库的大小 ------ 即:修改数据库中的数据文件

语法: 

  alter database 数据库名

  modify file

  (

   name=‘逻辑名’,

      size=修改后的大小,

      maxsize=修改后的最大大小,

   filegrowth=新的增长方式

  )

//用于修改MDF,NDF,LDF文件大小,修改后的大小必须大于原初始大小。若超过原最大大小(maxsize),则maxsize会更新为修改后的大小.

9.  删除数据库语法:

  Drop database  数据库名

【例】删除数据库bb

     drop database  bb

10.  删除数据文件和文件组 Ø <10.1> 删除空文件组

语法格式:

alter database 数据库名

remove filegroup文件组名

Ø <10.2> 删除辅助文件或日志文件

语法格式:

alter database 数据库名

remove file  逻辑文件名

<10.3>删除非空文件组:必须先删除文件组中的所有文件,再删除该文件组!

alter database bb

remove file bb_data2

go

alter database bb

remove filegroup f2

go

1.  用 create 创建表

use 数据库名

   create table 表名

    (  

      字段1 数据类型 identity(标示种子,递增量) primary key,

      字段2 数据类型, 

      字段3 数据类型,

      字段4 数据类型,

      字段5 数据类型, 

      字段6 数据类型,

                …

      字段n 数据类型

  )

  GO

注:n最大可等于1024

2.  用 alter 语句 --- 修改表的结构 u 1> 在表中添加新列

  use 数据库名

      alter table 表名

      add   字段1  数据类型1,

            字段2 数据类型2,

  …………

u   2> 删除表中的列

      use 数据库名

        alter table 表名

        drop column 字段1,字段2,……..

u 3> 改变字段的数据类型

use 数据库名 

alter table xs

alter column 字段名修改后的数据类型

go

u 4> 修改字符数据类型的长度( varchar )

use 数据库名

alter table 表名

alter column 字段名 char(修改后的长度)

go

u 5> 修改列名

下例将表Orders中的EmployeeID,列名改为EmpID

exec sp_rename 'Orders.EmployeeID', 'EmpID', 'column'

u 6> 修改表名

下例将表 customers 重命名为custs

exec sp_rename 'customers', 'custs‘

u 7> 查看表的定义

exec sp_help Orders

3.   用 drop 语句 ---- 删除表

语法:

  drop table 表名

【例】删除xs表:

            drop table xs