Título: llaves foraneas Publicado por: m@o_614 en 28 Marzo 2014, 23:43 pm Saludos, ya puede instalar bien el postgres y ahora estoy creando dos tablas, una con datos de un empleado y otra del departamento al que pertence
CREATE TABLE compania.empleado ( codigo INT, nombrep VARCHAR(15) NOT NULL, apellido VARCHAR(15) NOT NULL, sexo CHAR DEFAULT 'M', salario DECIMAL(10,2), nd INT NOT NULL, CONSTRAINT pk_empleado PRIMARY KEY (codigo) ); esta es la primer tabla, y la segunda es: CREATE TABLE compania.departamento ( numerod INT NOT NULL, nombred VARCHAR(25) NOT NULL, gerente CHAR(9) NOT NULL, CONSTRAINT pk_departamento PRIMARY KEY(numerod) ); despues el ejercicio me dice que tengo que definir una llave foranea que apunte al departamento al que pertenece el empleado (nd) y hago lo siguiente: ALTER TABLE compania.empleado ADD CONSTRAINT restriccion FOREIGN KEY(nd) REFERENCES compania.departamento(numerod); no me marca error, pero no se si he hecho la llave correctamente, y antes de seguir agregandole cosas a las tablas quiero saber si esta mal gracias Título: Re: llaves foraneas Publicado por: 1mpuls0 en 28 Marzo 2014, 23:54 pm Hola.
Lo haz hecho correctamente. Si quieres comprobar haz un insert a la tabla de empleado. Tomando en cuenta que debes ingresar un nd que sepas que no existe en la tabla departamento. Por ejemplo. Código
Debes tener algun tipo de error. En mysql sería: Código: Cannot add or update a child row: a foreign key constraint fails Que bonita es la integridad referencial ::) Título: Re: llaves foraneas Publicado por: m@o_614 en 29 Marzo 2014, 00:56 am muchas gracias por tu respuestaDarhius, una ultima pregunta si yo quiero respaldar la base de datos que acabo de hacer en un archivo.txt, como lo hago?? que comando tengo que usar?
Título: Re: llaves foraneas Publicado por: 1mpuls0 en 29 Marzo 2014, 07:28 am Utilizas consola o una interfaz?.
Bueno aun así no sé como hacerlo xD nunca he utilizado postgres, pero una GUI puede facilitarte esa tarea. Saludos! Título: Re: llaves foraneas Publicado por: Carloswaldo en 31 Marzo 2014, 17:57 pm ¿Instalaste también el PgAdminIII?
En ese caso puedes hacer clic derecho en la base de datos (hay una lista de bases de datos a la izquierda en la pantalla principal) y darle en "Backup" También puedes ir de la forma tradicional y usar pg_dump, en mi caso está ubicado en "C:\Program Files\PostgreSQL\9.3\bin>", si no sabes como usarlo pues está pg_dump --help Además te recomendaría no usar .txt como extensión sino .sql, es más descriptivo. |