/****** Object:  Table [dbo].[Base_Class]    Script Date: 05/18/2008 22:15:54 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Base_Class](
	[id] [int] IDENTITY(1,1) NOT NULL,
	[sub_type] [int] NOT NULL,
 CONSTRAINT [PK_Base_Class] PRIMARY KEY CLUSTERED 
(
	[id] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object:  Index [idx_base_class_id_sub_type]    Script Date: 05/18/2008 22:16:34 ******/
CREATE UNIQUE NONCLUSTERED INDEX [idx_base_class_id_sub_type] ON [dbo].[Base_Class] 
(
	[id] ASC,
	[sub_type] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

CREATE TABLE [dbo].[Inheriting_Class_A](
	[base_class_id] [int] NOT NULL,
 CONSTRAINT [PK_Inheriting_Class_A] PRIMARY KEY CLUSTERED 
(
	[base_class_id] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
ALTER TABLE [dbo].[Inheriting_Class_A]  WITH CHECK ADD  CONSTRAINT [FK_Inheriting_Class_A_Base_Class] FOREIGN KEY([base_class_id])
REFERENCES [dbo].[Base_Class] ([id])
GO
ALTER TABLE [dbo].[Inheriting_Class_A] CHECK CONSTRAINT [FK_Inheriting_Class_A_Base_Class]
GO

CREATE TABLE [dbo].[Inheriting_Class_B](
	[base_class_id] [int] NOT NULL,
 CONSTRAINT [PK_Inheriting_Class_B] PRIMARY KEY CLUSTERED 
(
	[base_class_id] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
ALTER TABLE [dbo].[Inheriting_Class_B]  WITH CHECK ADD  CONSTRAINT [FK_Inheriting_Class_B_Base_Class] FOREIGN KEY([base_class_id])
REFERENCES [dbo].[Base_Class] ([id])
GO
ALTER TABLE [dbo].[Inheriting_Class_B] CHECK CONSTRAINT [FK_Inheriting_Class_B_Base_Class]
GO

CREATE TABLE [dbo].[Inheriting_Class_C](
	[base_class_id] [int] NOT NULL,
 CONSTRAINT [PK_Inheriting_Class_C] PRIMARY KEY CLUSTERED 
(
	[base_class_id] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
ALTER TABLE [dbo].[Inheriting_Class_C]  WITH CHECK ADD  CONSTRAINT [FK_Inheriting_Class_C_Base_Class] FOREIGN KEY([base_class_id])
REFERENCES [dbo].[Base_Class] ([id])
GO
ALTER TABLE [dbo].[Inheriting_Class_C] CHECK CONSTRAINT [FK_Inheriting_Class_C_Base_Class]
GO