SQL Server数据架构创建之表格的创建
格式:
create table 表名
(
列名1 类型,
列名2 类型
)
on 文件组
如:
create table Student
(
id int identity(1,1),
name varchar(20)
)
on grouptwo
注:可在列后面添加各种约束等。如果需要使用代码列出当前数据库中的表,可查询
Sys.tables。如:
select * from Sys.tables
一、架构
架构是一个对象,仅用于拥有数据库对象,以便将大型数据划分成易于管理的模块或实
现不同的安全策略。默认情况下,对象归dbo架构所有,在由4部分组成的名称中,
架构安全是第三部分。
Server.Database.Schema.Object ;
注:如果使用自定义架构而不是dbo,则每次查询都必须指定该架构。
二、创建键
1、主键
关系数据库依赖于主键,在物理层主键主要有两个作用
a、唯一地标识行
b、作为可供外键引用的对象
SQL Server以约束方式实现主键和外键。
主键约束相当于唯一性约束和聚集(或非聚集)唯一索引的组合。
1.1创建主键
方法一:在创建表时在列后加上
primary key [nonclustered|clustered]
或者在表格定义的最后定义
如:
create table Student
(
id int identity(1,1) primary key ,
name varchar(20)
)
或
create table Student
(
id int identity(1,1) ,
name varchar(20),
constraint Student_PK_ID primary key (id)
)
方法二:使用alter table声明
alter table 表名 add constraint 约束名 primary key (列名1[,列名2]) on 文件组名
如:alter table Student add constraint Student_PK_ID primary key (id)
1.2天然主键
如:人名、护照号、街道地址
1.3标识列代理主键
identity(n1,n2)
1.
4gUID
使用Default ( newid ( ) |newSequentialID())
三、创建外键
1.1创建表时在列后加
foreign key references 表名(列名)
1.2使用alter table
alter table 表名 add constraint 约束名 foreign key (外键列名) references 表名(列名)
注:表名(列名):一般是其它表和其主键列。
如:
create table course
(
c_id int primary key,
c_name varchar(20)
)
go
create table select_course
(
s_id int foreign key references Student(id),
c_id int foreign key references course(c_id)
)
1.3可选外键(外键值可为空,也有效)
1.4级联删除和更新
当主键值被删除或更新时,相应的外键也随同一起删除和更新。