SQL的一些问题,主键约束,索引约束,外键约束用SQL语句怎么写?

SQL的一些问题,主键约束,索引约束,外键约束用SQL语句怎么写?
两个表::
表 tblCommDevice 包含:
CommDevID 整型 从1开始自动增长,增长幅度为1 不允许为空 ,
PersonID 整型 不允许为空 ,
CommType 字符串 20 允许为空,
CommValue 字符串 60 不允许为空

表 tblPerson 包含:
PersonID 整型 从1开始自动增长,增长幅度为1 不允许为空 ,
LastName 字符串 20 不允许为空 ,
FirstName 字符串 20 不允许为空 ,
MailingAddr 字符串 40 允许为空,
City 字符串 20 允许为空,
State 字符串 2 允许为空,
Zip 字符串 10 允许为空,
PersonType 字符串 1 允许为空
索引键: tblCommDevice表 PersonID
索引键: tblCommDevice表 CommType
索引键: tblPerson表 LastName, FirstName
索引键: tblPerson表 FirstName
从表: tblCommDevice表
主表: tblPerson表
关联键:PersonID

用SQL语句怎么写,各位帮帮忙啊?
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[tblCommDevice]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[tblCommDevice]
GO
CREATE TABLE [dbo].[tblCommDevice]
(
CommDevID int identity(1,1) not null,
PersonID int not null,
CommType varchar(20) null,
CommValue varchar(60) not null,
CONSTRAINT pk_tblCommDevice PRIMARY KEY CLUSTERED (PetitionID) WITH FILLFACTOR = 90 ON [PRIMARY]
) ON [PRIMARY]
GO
CREATE INDEX [ix_tblCommDevice] ON [dbo].[tblCommDevice]([CommType]) WITH FILLFACTOR = 60 ON [PRIMARY]
GO
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[tblPerson]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[tblPerson]
GO
CREATE TABLE [dbo].[tblPerson]
(
PersonID int identity(1,1) not null,
LastName varchar(20) not null,
FirstName varchar(20) not null,
MailingAddr varchar(40) null,
City varchar(20) null,
State varchar(2) null,
Zip varchar(10) null,
PersonType varchar(1) null,
CONSTRAINT pk_tblPerson PRIMARY KEY CLUSTERED (PersonID) WITH FILLFACTOR = 90 ON [PRIMARY]
) ON [PRIMARY]
GO
CREATE INDEX [ix_tblPerson] ON [dbo].[tblPerson]([FirstName]) WITH FILLFACTOR = 60 ON [PRIMARY]
GO
CREATE INDEX [ix_tblPerson_1] ON [dbo].[tblPerson]([LastName], [FirstName]) WITH FILLFACTOR = 60 ON [PRIMARY]
GO
← 上一篇: 下一篇: →