Ver Mensaje Individual
  #1  
Antiguo 07-04-2018
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Reputación: 19
Angel.Matilla Va por buen camino
Error al definir una FOREIGN KEY

Tengo un BB.DD. en FB 2.5 con estas dos tablas:
Código:
CREATE TABLE Poblacion (CodPrv VARCHAR(2) DEFAULT '99' NOT NULL, Codigo INTEGER NOT NULL, 
Nombre VARCHAR(65) NOT NULL, Cpostal VARCHAR(10) NOT NULL, Pais VARCHAR(2) DEFAULT 'PD, 
CONSTRAINT PK_Poblacion PRIMARY KEY (CodPrv, Codigo))
Código:
CREATE TABLE DatLoc (CodPrv VARCHAR(2) DEFAULT '99' NOT NULL, Poblacion INTEGER NOT NULL, 
Actualiza TIMESTAMP, Padron INTEGER, Censo INTEGER, Concejales SMALLINT, 
Afiliados SMALLINT, Alcalde VARCHAR(60), Partido SMALLINT DEFAULT 1, 
Constitucion DATE, Sede VARCHAR(40), TlfSede VARCHAR(10), 
Presidente VARCHAR(60), TlfPres VARCHAR(10), Portavoz VARCHAR(60), 
TlfPort VARCHAR(10), Observaciones BLOB SUB_TYPE 1, 
CONSTRAINT PK_DatLoc PRIMARY KEY (CodPrv, Poblacion))
Y necesito definir una clave externa de la siguiente forma:
Código:
ALTER TABLE DATLOC ADD CONSTRAINT FK_DATLOC 
FOREIGN KEY (CODPRV,POBLACION) REFERENCES POBLACION(CODPRV,CODIGO) 
ON DELETE CASCADE ON UPDATE CASCADE;
Sin embargo, al ejecutar ese código me está dando este error:
Cita:
Unsuccessful metadata update.
Partner index segment no 1 has incompatible data type.

SQL Code: -607
IB Error Number: 335544351
El código del ALTER TABLE es el que me ha generado el propio SQL Manager y no acabo de ver dónde está el problema.
Responder Con Cita