创建一个数据库需要确定数据库名称、文件名称、数据文件大小、数据库的字符集、是否自动增长以及如何自动增长等信息的过程。通过Transact-SQL创建数据库,其实就是在查询窗口编辑面板使用create database语句。
将SQL打开后,在新建查询窗口中编辑。使用create database语句创建test数据库,指定数据文件和事务日志文件。
create database test
on primary --指定显式定义用来存储数据库数据部分的磁盘文件
(
name=test_data,
filename="D:\JAVA\SQL\test_data.mdf", --数据库文件的路径
size=5MB, --文件大小
maxsize=20MB, --文件可增长到最大大小
filegrowth=10% --文件的自动增量
)
log on --指定显式定义用来存储数据库日志的磁盘文件(日志文件)
(
name=test_log,
filename="D:\JAVA\SQL\test_log.ldf", --事务日志文件的路径
size=1MB,
maxsize=5MB,
filegrowth=10%
)
在此基础上,创建表时需要使用create table命令。创建的表需要有表名、列名、数据类型、是否为空、约束等,这里我建了两个表class和student。
create table class
(
cid nchar(10) NOT NULL primary key, --主键约束
cname nchar(10)
)
create table student
(
cid nchar(10) NOT NULL ,
stuid nchar(10) NOT NULL ,
Name nchar(20) NOT NULL,
sex nchar(2),
age varchar(18) NOT NULL,
telephone varchar(13) NOT NULL,
address varchar(50),
primary key(stuid), --主键约束
foreign key(cid) references class(cid), --外键约束
check(sex='男' or sex='女')
)
执行完语句后可在test数据库下的表中看到已完成两个表的创建。
选中dbo.class或dbo.student右键单击选择【设计】,查看表的数据类型。
在student表中右键单击【cid】并选择关系可查看到外键关系的详细信息,或者直接点击对象资源管理器中dbo.student下的【键】。
在dbo.student下的约束下已成功创建关于sex的约束。
如果需要修改表名、列名、列名的数据类型或者添加约束,可以使用alter table命令。
alter table student add --修改基本表
constraint CK_telephone
check(telephone like '[0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'or len(telephone)=13) --添加约束
执行完语句后可在表下的约束中看到该条约束,双击可查看该约束详细信息。
可以试着修改列名的数据类型,这里将长度从nchar(10)改成了nchar(20)。
alter table student
alter column Name nchar(20) --修改student中姓名(Name)列的长度
表建好之后可以往里添加数据了。
向表的所有字段列添加数据。
insert into class values('1001','一班') --插入单条记录
为表的指定字段列添加数据
insert into class(cid,cname) values('1002','二班') --为指定字段列添加数据
单条插入数据比较麻烦,还可以多条、批量的插入数据。
insert into class values('1003','三班'),('1004','四班'),('1005','五班'),('1006','六班') --插入多条记录
如果想删除数据的话,可以使用delete命令,删除数据表中的单行数据、多行数据以及所有数据,同时在where子句中也可以通过子查询删除数据。
delete from class where cid=1006 --删除单行数据
delete top(3) class --删除前3条数据