Especialização SQL Server
20/07/2019
0
Pessoal preciso especializar a tabela Cliente em Pessoa Física e Jurídica, fiz isso:
Não sei se esta certo e nesse caso como eu faria para usar o insert e o select nas tabelas, por exemplo "como faço para inserir um Cliente Pessoa Física?"
create table tb_cliente( cod_cliente int not null identity, email_cliente VARCHAR(100) not null, constraint tb_cliente_PK primary key (cod_cliente) ) go create table tb_cliente_fisico( nome_fisico varchar(15) not null, rg_fisico varchar(12) not null, cpf_fisico char(11) not null, datanasc_fisico datetime not null, cod_cliente int not null identity, constraint tb_cliente_fisico_PK primary key (cod_cliente), constraint tb_cliente_tb_cliente_fisico_FK foreign key (cod_cliente) references tb_cliente (cod_cliente) ) go create table tb_cliente_juridico( nome_fantasia varchar(40) not null, razao_social varchar(20) not null, cod_cliente int not null, cnpj char(14) not null constraint tb_cliente_juridico_PK primary key (cod_cliente), constraint tb_cliente_tb_cliente_juridico_FK foreign key (cod_cliente) references tb_cliente (cod_cliente) )
Não sei se esta certo e nesse caso como eu faria para usar o insert e o select nas tabelas, por exemplo "como faço para inserir um Cliente Pessoa Física?"
Arthur Nascimento
Curtir tópico
+ 0
Responder
Post mais votado
22/07/2019
Boa noite, tudo bem?
Acho que o correto é remover estas duas tabelas tb_cliente_juridico, tb_cliente_fisico e passar tudo para a tabela tb_cliente
create table tb_cliente(
cod_cliente int not null identity,
email_cliente VARCHAR(100) not null,
nome_fantasia varchar(40) not null,
razao_social varchar(20) not null,
cpfcnpj char(14) not null,
datanasc datetime,
rg_ie int,
constraint tb_cliente_PK primary key (cod_cliente)
)
go
Atualmente trabalho convertendo banco de dados e vejo que muitos vem assim, de fato bem "generalizado", o que você poderia fazer é passar os dados de contato para outra tabela, referenciando apenas o codigo, mas se de fato está certo, não sei te responder...
Acho que o correto é remover estas duas tabelas tb_cliente_juridico, tb_cliente_fisico e passar tudo para a tabela tb_cliente
create table tb_cliente(
cod_cliente int not null identity,
email_cliente VARCHAR(100) not null,
nome_fantasia varchar(40) not null,
razao_social varchar(20) not null,
cpfcnpj char(14) not null,
datanasc datetime,
rg_ie int,
constraint tb_cliente_PK primary key (cod_cliente)
)
go
Atualmente trabalho convertendo banco de dados e vejo que muitos vem assim, de fato bem "generalizado", o que você poderia fazer é passar os dados de contato para outra tabela, referenciando apenas o codigo, mas se de fato está certo, não sei te responder...
Igor Ferreira
Responder
Clique aqui para fazer login e interagir na Comunidade :)