Cita: ERROR: el número de columnas referidas en la llave foránea no coincide con el número de columnas de referencia
El problema que tienes es simple y concreto, y se puede entender con solo el mensaje de error si lo interpretas en base al modelo E-R:
Una de las FK apunta a un campo que no tiene un único campo como PK. Debe ser una PK compuesta por más de uno, y una de las primeras reglas de una FK es que debe tener
la misma cantidad de campos, del mimo tipo y en el mismo orden de la PK a la que apunta.
¿Se entiende?
La adición de la FK no se hace sobre cada columna, sino sobre las dos al mismo tiempo.
Te recomiendo leer con atención el manual de referencia de PostgreSQL ante este tipo de cosas. Es lo que hacemos los que nos dedicamos a BBDD.
El ejemplo de ese manual es suficientemente claro:
Código SQL:
Ver originalCREATE TABLE t1 (
a INTEGER PRIMARY KEY,
b INTEGER,
c INTEGER,
FOREIGN KEY (b, c) REFERENCES other_table (c1, c2)
);
Fuente:
http://www.postgresql.org/docs/9.3/s...nstraints.html