文档介绍:第4章结构化查询语言SQL
SQL简介
SQL(Structured Query Language):1986年提出,最
终成为关系数据库的标准语言。
综合统一
数据定义语言DDL
CREATE、ALTER、DROP
数据操纵语言DML
SELECT,INSERT,
DELETE,UPDATE
数据控制语言DCL
GRANT, DENY, REVOKE
非过程化
只需提出“做什么”,不必指明“怎么做”
操作方式
面向集合
使用方法
既是自含式语言,又是嵌入式语言
Transact-SQL:SQL Server中扩展的SQL实现。增加了变量、运算符、函数、流程控制等语言元素。
数据库的创建、删除
创建数据库
CREATE DATABASE database_name
[ ON
[ < filespec > [ ,...n ] ]
[ , < filegroup > [ ,...n ] ]
]
[ LOG ON { < filespec > [ ,...n ] } ]
CREATE DATABASE "Test"
CREATE DATABASE Sales
ON
( NAME = Sales_dat,
FILENAME = 'c:\program files\microsoft sql server\mssql\data\',
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5 )
LOG ON
( NAME = 'Sales_log',
FILENAME = 'c:\program files\microsoft sql server\mssql\data\',
SIZE = 5MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB )
GO
将GO之前的SQL语句作为一个批处理提交给SQL Server
SQL Server的内部流程:
①使用 model 数据库的复本初始化数据库及其元数据。
②SQL Server 使用空页填充数据库的剩余部分,除了包含记录数据库中空间使用情况以外的内部数据页。
设置当前数据库
use <数据库名>
use "Test1"
删除数据库
drop DATABASE <数据库名>
drop DATABASE "Test1"
表结构的建立、修改和删除
建立表结构及表内约束
CREATE TABLE [<数据库名>.<所有者名>.]<基本表名>
(<列定义>,……
[,<表级完整性约束>,……]
)
CREATE TABLE S
(Sno CHAR(8) Primary key,
Sname CHAR(6) not null UNIQUE,
Ssex CHAR(2) not null check(Ssex='男' or Ssex='女'),
Sbirthday DATETIME check(Sbirthday<='1990-12-31'),
Sdept CHAR(10) DEFAULT '信