Ver Mensaje Individual
  #2 (permalink)  
Antiguo 06/03/2012, 18:12
Avatar de matanga
matanga
 
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 14 años, 6 meses
Puntos: 85
Respuesta: Duda con claves primarias

Lo puedes resolver con una PK compuesta, por ejemplo:

Código:
create table ofertas (
id_oferta varchar2(15) not null primary key
);

create table conceptos (
id_oferta varchar2(15) not null,
id_concepto varchar2(3) not null
);

--valida la relación entre conceptos y ofertas
alter table conceptos 
 add constraint fk_ofertas foreign key (id_oferta) 
 references ofertas(id_oferta);

--valida que sea único el par id_oferta, id_concepto 
alter table conceptos 
 add constraint pk_conceptos 
  primary key (id_oferta, id_concepto);

insert into ofertas values ('GIA-013-A-12');
insert into conceptos values ('GIA-013-A-12', '001');

--consulta para obtener el valor GIA-013-A-12001
select id_oferta || id_concepto from conceptos;
Saludos