Web Listing 2: Code to Create New Tables /*============================================================== Table: dbo.IMAGEKEYWORD ==============================================================*/ if exists (select * from dbo.sysobjects where id = object_id('dbo.IMAGEKEYWORD') and OBJECTPROPERTY(id, N'IsUserTable') = 1) DROP TABLE dbo.IMAGEKEYWORD GO -- create table dbo.IMAGEKEYWORD ( ImageKeywordID int identity(1,1) NOT FOR REPLICATION, ImageID int not null, KeywordID int not null, ) GO -- -- Add the primary key (pkey is automatically indexed). -- ALTER TABLE dbo.IMAGEKEYWORD ADD CONSTRAINT PK_ImageKeyword PRIMARY KEY NONCLUSTERED (ImageKeywordID) GO -- -- Add a clustering index. -- CREATE CLUSTERED INDEX idc_imagekeyword ON dbo.IMAGEKEYWORD (ImageID, KeywordID) GO -- -- Add a normal index. -- CREATE INDEX idx_imagekeywd_imageID ON dbo.IMAGEKEYWORD (KeywordID ) GO /*==============================================================*/ /* Table: dbo.IMAGE */ /*==============================================================*/ if exists (select * from dbo.sysobjects where id = object_id('dbo.IMAGE') and OBJECTPROPERTY(id, N'IsUserTable') = 1) DROP TABLE dbo.IMAGE GO -- create table dbo.IMAGE ( ImageID int IDENTITY (1, 1) NOT FOR REPLICATION, ImageName varchar(30) NOT NULL , ImageFile varchar(30) NOT NULL ) GO -- -- pkey -- ALTER TABLE dbo.IMAGE ADD CONSTRAINT PK_IMAGE PRIMARY KEY CLUSTERED (ImageID) GO /*============================================================== Table: dbo.KEYWORD ==============================================================*/ if exists (select * from dbo.sysobjects where id = object_id('dbo.KEYWORD') and OBJECTPROPERTY(id, N'IsUserTable') = 1) DROP TABLE dbo.KEYWORD GO -- create table dbo.KEYWORD ( KeywordID int identity(1 , 1) NOT FOR REPLICATION, KeywordDscr varchar(40) not null /* Callout A */ ) GO -- -- Add the primary key (pkey is automatically indexed). -- ALTER TABLE dbo.KEYWORD ADD CONSTRAINT PK_Keyword PRIMARY KEY NONCLUSTERED (KeywordID) GO -- -- Add a unique clustering index (unique to avoid duplicate keywords). -- CREATE UNIQUE CLUSTERED INDEX idu_Keyword_Dscr ON dbo.Keyword (KeywordDscr) WITH IGNORE_DUP_KEY, PAD_INDEX, FILLFACTOR = 90 GO /*------------------------------------------------------------------- Add the foreign key constraints. -------------------------------------------------------------------*/ ALTER TABLE dbo.IMAGEKEYWORD ADD CONSTRAINT fk_ImageKeywd2Image FOREIGN KEY (ImageID) REFERENCES dbo.IMAGE (ImageID) GO ALTER TABLE dbo.IMAGEKEYWORD ADD CONSTRAINT fk_ImageKeywd2Keywd FOREIGN KEY (KeywordID) REFERENCES dbo.KEYWORD (KeywordID) GO