前言
经过前文的简单介绍,初步了解了SQL语言的特点以及基本概念,本文将进行具体代码编写的介绍 ,通过相关实例对于代码进行深度学习与分析。本小节主要介绍关于数据库的建立、表的建立、主码与外码的设置、数据的插入进行展开。
一、数据库的创建与删除
R
CREATE DATABASE S_T
DROP DATABASE S_T
上面两行是创建/删除数据库的基本语句,CREATE表示创建,DROP表示删除,而"S-T"位置表示该数据库的名字,用户可以自行设置。
R
CREATE DATABASE [S_T_201215]
ON (
NAME = N'S_T_201215_dat',
FILENAME = N'D:\S_T_201215_dat.mdf' ,
SIZE = 5,
MAXSIZE = 10,
FILEGROWTH = 5
)
LOG ON (
NAME = N'S_T_201215_log',
FILENAME = N'D:\S_T_20151215_log.ldf' ,
SIZE = 5,
MAXSIZE = 20,
FILEGROWTH = 2
)
GO
上述代码介绍了数据库比较高级的创建方法,可以在创建过程中对于数据文件(上半部分)以及事务日志文件(下班部分)的存储位置、存储名称、初始大小、最大大小以及每次扩展大小进行详细描述。
上面一段代码的具体含义为:
- 创建一个名为 S_T_201215 的新数据库。
- 在 D: 盘下创建一个主数据文件(****.mdf ) ,初始大小为 5 MB ,最大大小为 10 MB ,每次扩展增长 5 MB。
- 在 D: 盘下创建一个事务日志文件(****.ldf ) ,初始大小为 5 MB ,最大大小为 20 MB ,每次扩展增长 2 MB。
二、基本表的创建与删除
R
CREATE TABLE Student
(
Sno varchar(12),
Sname varchar(50),
Sage tinyint,
Ssex char(2),
)
关于基本表的创建,使用仍然为CREATE 这一语句,"Student"处可以进行自行命名,而括号中的部分便体现了该表中的各个属性,比如属性"Sno" ,它所对应的数据类型为"varchar(12)",不同属性之间用逗号隔开,这样便创建好了一个基本表。
R
DROP TABLE Student
关于基本表的删除,仍然采用DROP这一语句,与数据库的建立相同,便不再赘述。
三、基本表的修改
基本表的修改,需要运用ALTER 这一语句,关于基本表的修改,有以下三种情况:增加属性、修改已有属性、删除属性,下面进行逐一分析。
1.增加属性
R
ALTER TABLE Student
ADD Sdept char(20),Sid varchar(18)
增加属性使用ADD 这一语句,在使用过程中,直接在ADD后面输入需要增加的属性名称与其所对应的数据类型 。如上所示,便是++添加数据类型为"char(20)"的Sdept属性以及数据类型为"varchar(18)"的Sid属性。++
2.修改已有属性
R
ALTER TABLE Student
ALTER COLUMN Sno varchar(16) not null
修改已有属性时,要注意运用ALTER COLUMN 这一语句,然后在其后面输入待修改的属性名称以及修改后的定义即可。如上所示,便是将原来++添加数据类型为"varchar(12)"的Sno属性修改为数据类型为"varchar(16)",并要求非空。++
3.删除属性
R
ALTER TABLE Student
DROP COLUMN Sid
删除属性操作较为简单,直接运用DROP COLUMN 语句,将待删除属性名称输入即可。如上所示,便是将原来++Sid属性删除。++
四、主码/外码的设置
关于主码/外码的设置,其实是对于基本表参照完整性的设置,其本质还是在对基本表进行修改,所以还是要使用ALTER语句。
1.主码的设置
R
ALTER TABLE Student
ADD CONSTRAINT PK__Student PRIMARY KEY (Sno)
设置主码,相当于进行增加限制,因此采用ADD CONSTRAINT 语句,然后PK__Student PRIMARY KEY 表示为该基本表设置主码**。** 如上所示,便是将++Sno属性设置为Student基本表的主码/主键。++
2.外码的设置
设置外码之前,我们首先创建另一个基本表SC
R
CREATE TABLE SC
(
Sno varchar(12) not null,
Cno varchar(10) not null,
Grade int,
)
go
ALTER TABLE SC
ADD CONSTRAINT PK__SC PRIMARY KEY (Sno,Cno)
go
上述代码创建了一个包含属性Sno、Cno、Grade 三个属性的基本表SC ,同时设置Sno、Cno共同作为主码。
R
ALTER TABLE SC
ADD CONSTRAINT FK__SC__Sno FOREIGN KEY (Sno) REFERENCES Student (Sno)
外码的设置代码较为复杂,同样还是ADD CONSTRAINT 语句,FK__SC__Sno FOREIGN KEY 表示设置外码,而后面的REFERENCES 表述外码的数据源来自于哪个基本表。如上所示,便是将++Sno属性设置为SC基本表的外码,被参照表是Student。即,SC中的Sno属性的数据源来自于Student中的Sno属性。++
五、数据的插入
关于数据的插入,使用INSERT语句,下面介绍三种插入方法。
R
INSERT Student(Sno,Sname,Sage,Ssex,Sdept)
VALUES('201212121','李勇',20,'男','CS')
INSERT Student
VALUES('201215122','刘晨',19,'女','MA')
INSERT Student(Sno,Sname)
VALUES('201212123','王敏')
基本表中数据的插入操作较为简单,直接在INSERT 语句后添加待插入基本表的名字,同时按照设置的属性顺序逐一放入数据,注意数据类型的对应性 ,此外,若只是插入部分属性 ,则应该表明插入的属性的名称,达到部分插入的效果。