这是我到目前为止所拥有的:
create table rubro (
id_rubro int primary key,
nombre_rubro nvarchar(150)
)
go
create table cliente (
id_cliente int primary key,
direccion nvarchar(400),
telefono int,
nit int
)
答案 0 :(得分:2)
您只需要创建缺少的两个表并将它们链接到cliente
表:
create table natural (
id_cliente int primary key,
nombre nvarchar(50),
app nvarchar(50),
apm nvarchar(50),
....
)
alter table dbo.natural
add constraint fk_natural_cliente
foreign key(id_cliente) references dbo.cliente(id_cliente)
和juridico
表也一样。
在SQL Server中,这些只是三个常规表,由外键约束链接。使用OR映射器(如Entity Framework)使您能够将这些映射器作为.NET域模型中的后代类进行映射 - 但在数据库级别,这些只是三个常规表 - 对它们没什么“神奇”......
答案 1 :(得分:1)
如果我正确理解了图表,那么它是面向对象的图,而不是关系图。 natural
和juridico
是超类cliente
的子类。
关系数据库中没有继承这样的概念。映射clas层次结构时,有一些常用模式可供使用:
所有这些都各有利弊。我建议你开始阅读这些内容。