Foro de elhacker.net

Programación => Bases de Datos => Mensaje iniciado por: dark08 en 5 Septiembre 2012, 05:15 am



Título: Ayuda con creacion de tablas
Publicado por: dark08 en 5 Septiembre 2012, 05:15 am
Hola, que tal foro, tengo una duda, lo que pasa es que estoy creando una base de datos en SQL Server 2008 y creo todo con el Query pero me marcan varios errores, estoy iniciando en bases de datos, espero puedan ayudarme. muchas gracias dejo el code.

Código:
USE dep
GO

-- TABLA DEPARTAMENTO

CREATE TABLE DEPARTAMENTO(
NOMBRED VARCHAR(15) NOT NULL,
NUMEROD INT NOT NULL,
NSSGTE  CHAR(9),
FECHAINICGTE DATE,

PRIMARY KEY (NUMEROD),
UNIQUE(NOMBRED),
FOREIGN KEY (NSSGTE) REFERENCES EMPLEADO (NSS),
)
GO

--TABLA EMPLEADO

CREATE TABLE EMPLEADO(
NOMBREP  VARCHAR(15) NOT NULL,
INIC     CHAR NULL,
APELLIDO VARCHAR (15)NOT NULL,
NSS      CHAR(9)NOT NULL,
FECHAN   DATE,
DIRECCION VARCHAR (30) NULL,
SEXO     CHAR NULL,
SALARIO  DECIMAL (10,2) NULL,
NSSUPER  CHAR(9) NULL, 
ND       INT NULL,
PRIMARY KEY (NSS),
FOREIGN KEY (NSSSUPER)REFERENCES EMPLEADO(NSS),
FOREIGN KEY (ND) REFERENCES DEPARTAMENTO (NUMEROD),
)
GO

-- TABLA LUGARES_DEPTOS


CREATE TABLE LUGARES_DEPTOS(
NUMEROD INT NOT NULL,
LUGARD  VARCHAR (15) NOT NULL,

PRIMARY KEY (NUMEROD, LUGARD),
FOREIGN KEY (NUMEROD) REFERENCES DEPARTAMENTO (NUMEROD),
)
GO


-- TABLA PROYECTO


CREATE TABLE PROYECTO(
NOMBREPR  VARCHAR(15) NOT NULL,
NUMEROP   INT NOT NULL,
LUGARP    VARCHAR(15) NULL,
NUMD      INT NOT NULL,
PRIMARY KEY (NUMEROP),
UNIQUE (NOMBREPR),
FOREIGN KEY (NUMD) REFERENCES DEPARTAMENTO (NUMEROD),
)
GO


--TABLA TRABAJA_EN

CREATE TABLE TRABAJA_EN(
NSSE  CHAR(9) NOT NULL,
NUMP  INT NOT NULL,
HORAS DECIMAL (3,1) NOT NULL, 
PRIMARY KEY (NSSE, NUMP),
FOREIGN KEY (NSSE) REFERENCES EMPLEADO (NSS),
FOREIGN KEY (NUMP) REFERENCES PROYECTO (NUMEROP),
)
GO

--TABLA DEPENDIENTE

CREATE TABLE DEPENDIENTE(
NSSE    CHAR(9)NOT NULL,
NOMBRE_DEPENDIENTE VARCHAR(15)NOT NULL, 
SEXO    CHAR,
FECHAN  DATE,
PARENTESCO VARCHAR (8) NULL,
PRIMARY KEY (NSSE,NOMBRE_DEPENDIENTE),
FOREIGN KEY (NSSE) REFERENCES EMPLEADO (NSS),
)
GO






Errores

Código:
Mens. 1767, Nivel 16, Estado 0, Línea 4
La clave externa 'FK__DEPARTAME__NSSGT__4D94879B' hace referencia a la tabla no válida 'EMPLEADO'.
Mens. 1750, Nivel 16, Estado 0, Línea 4
No se pudo crear la restricción. Consulte los errores anteriores.
Mens. 1769, Nivel 16, Estado 1, Línea 4
La clave externa 'NSSSUPER' hace referencia a una columna no válida 'NSSSUPER' en la tabla que hace la referencia 'EMPLEADO'.
Mens. 1750, Nivel 16, Estado 0, Línea 4
No se pudo crear la restricción. Consulte los errores anteriores.
Mens. 1767, Nivel 16, Estado 0, Línea 5
La clave externa 'FK__LUGARES_D__NUMER__52593CB8' hace referencia a la tabla no válida 'DEPARTAMENTO'.
Mens. 1750, Nivel 16, Estado 0, Línea 5
No se pudo crear la restricción. Consulte los errores anteriores.
Mens. 1767, Nivel 16, Estado 0, Línea 6
La clave externa 'FK__PROYECTO__NUMD__59FA5E80' hace referencia a la tabla no válida 'DEPARTAMENTO'.
Mens. 1750, Nivel 16, Estado 0, Línea 6
No se pudo crear la restricción. Consulte los errores anteriores.
Mens. 1767, Nivel 16, Estado 0, Línea 5
La clave externa 'FK__TRABAJA_EN__NSSE__5EBF139D' hace referencia a la tabla no válida 'EMPLEADO'.
Mens. 1750, Nivel 16, Estado 0, Línea 5
No se pudo crear la restricción. Consulte los errores anteriores.
Mens. 1767, Nivel 16, Estado 0, Línea 4
La clave externa 'FK__DEPENDIENT__NSSE__6383C8BA' hace referencia a la tabla no válida 'EMPLEADO'.
Mens. 1750, Nivel 16, Estado 0, Línea 4
No se pudo crear la restricción. Consulte los errores anteriores.