一、Modeling a Many-to-Many Relationship with No Payload
1. 创建数据库表
CREATE TABLE [Album] ( [AlbumId] [int] NOT NULL IDENTITY(1, 1), [AlbumName] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ) ON [PRIMARY] GO ALTER TABLE [Album] ADD CONSTRAINT [PK_Album] PRIMARY KEY CLUSTERED ([AlbumId]) ON [PRIMARY] GO CREATE TABLE [Artist] ( [ArtistId] [int] NOT NULL IDENTITY(1, 1), [FirstName] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL, [MiddleName] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL, [LastName] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ) ON [PRIMARY] GO ALTER TABLE [Artist] ADD CONSTRAINT [PK_Artist] PRIMARY KEY CLUSTERED ([ArtistId]) ON [PRIMARY] GO CREATE TABLE [LinkTable] ( [ArtistId] [int] NOT NULL, [AlbumId] [int] NOT NULL ) ON [PRIMARY] GO ALTER TABLE [LinkTable] ADD CONSTRAINT [PK_LinkTable] PRIMARY KEY CLUSTERED ([ArtistId], [AlbumId]) ON [PRIMARY] GO ALTER TABLE [LinkTable] ADD CONSTRAINT [FK_LinkTable_Album] FOREIGN KEY ([AlbumId]) REFERENCES [Album] ([AlbumId]) GO ALTER TABLE [LinkTable] ADD CONSTRAINT [FK_LinkTable_Artist] FOREIGN KEY ([ArtistId]) REFERENCES [Artist] ([ArtistId]) GO