por mas que miro y pruebo no doy con la solucion.
Código SQL:
Ver original--creacion de la base de datos--
CREATE DATABASE Taller
GO
--activamos el uso de la base de datos--
USE taller
GO
--creamos las tablas--
CREATE TABLE [Clientes]
(
[CodCliente] INT IDENTITY (1,1)NOT NULL PRIMARY KEY,
[Nombre] VARCHAR(100) NULL,
[Apellidos] VARCHAR(100) NULL,
[DNI] VARCHAR(10) NOT NULL,
[Direccion] VARCHAR(100) NULL,
[Telefono] INT NOT NULL
)
GO
CREATE TABLE [Vehiculos]
(
[Matricula] VARCHAR(10) NOT NULL PRIMARY KEY,
[Marca] VARCHAR(100) NULL,
[Modelo] VARCHAR(100) NULL,
[FechaMatriculacion] INT NULL,
[Color] VARCHAR(100) NULL,
[CodCliente] INT NOT NULL,
)
GO
ALTER TABLE Vehiculos ADD CONSTRAINT FK_CodClientes
FOREIGN KEY(CodCliente) REFERENCES Clientes(CodCliente)
ON UPDATE CASCADE
ON DELETE CASCADE
GO
CREATE TABLE [Empleados]
(
[CodEmpleado] INT NOT NULL IDENTITY (1,1) PRIMARY KEY,
[Nombre] VARCHAR(100) NULL,
[Apellidos] VARCHAR(100) NULL,
[DNI] VARCHAR(40) NULL,
[Direccion] VARCHAR(200) NULL,
[Telefono] INT NULL,
[CP] INT NULL,
[FechaAlta] INT NULL,
[Categoria] VARCHAR(100) NULL
)
GO
CREATE TABLE [Recambios]
(
[CodRecambio] INT NOT NULL IDENTITY (1,1) PRIMARY KEY,
[Descripcion] VARCHAR(100) NULL,
[UnidadBase] VARCHAR(100) NULL,
[Stock] SMALLINT NULL,
[PrecioReferencia] DECIMAL(6,2) NULL
)
GO
CREATE TABLE [Reparaciones]
(
[CodReparacion] INT NOT NULL IDENTITY (1,1) PRIMARY KEY,
[FechaEntrada] DATE NULL,
[KmRecorridos] DECIMAL(8,2) NULL,
[Averia] VARCHAR(100) NULL,
[FechaSalida] DATE NULL,
[Reparado] Tinyint DEFAULT 1 NULL,
[Observaciones] VARCHAR(100) NULL,
[Matricula] VARCHAR(10) NULL
)
GO
-- creacion relacion entre Reparaciones y vehiculos.--
ALTER TABLE Reparaciones ADD CONSTRAINT FK_matricula
FOREIGN KEY(Matricula) REFERENCES Vehiculos(Matricula)
ON UPDATE CASCADE
ON DELETE CASCADE
GO
CREATE TABLE [Actuaciones]
(
[Referencia] INT NOT NULL IDENTITY (1,1) PRIMARY KEY,
[Descripcion] VARCHAR(100) NULL,
[TiempoEstimado] DECIMAL(4,2) NULL,
[Importe] DECIMAL(6,2) NULL
)
GO
-- creamos tabla intermedia en la relacion entre Actuaciones y Reparaciones.--
CREATE TABLE [Realizan]
(
[Horas] DECIMAL(4,2) NULL,
[CodReparacion] INT NOT NULL,
[Referencia] INT NOT NULL
)
GO
-- creacion relacion entre actuaciones y reparaciones --
ALTER TABLE Realizan ADD CONSTRAINT FK_CodRepara
FOREIGN KEY (CodReparacion) REFERENCES Reparaciones(CodReparacion)
ON UPDATE cascade
ON DELETE cascade
GO
ALTER TABLE Realizan ADD CONSTRAINT FK_Referencia
FOREIGN KEY (Referencia) REFERENCES Actuaciones(Referencia)
ON UPDATE cascade
ON DELETE cascade
GO
--creamos tabla intermedia en la relacion entre Reparaciones y Empleados--
CREATE TABLE [Intervienen]
(
[Horas] DECIMAL(4,2) NULL,
[CodReparacion] INT NOT NULL,
[CodEmpleado] INT NOT NULL
)
GO
-- Creamos la relacion entre Empleados y Reparaciones.--
ALTER TABLE Intervienen ADD CONSTRAINT FK_Codempleado
FOREIGN KEY (CodEmpleado) REFERENCES Empleados(CodEmpleado)
ON UPDATE cascade
ON DELETE cascade
GO
ALTER TABLE Intervienen ADD CONSTRAINT FK_CodRepara2
FOREIGN KEY (CodReparacion) REFERENCES Reparaciones(CodReparacion)
ON UPDATE cascade
ON DELETE cascade
GO
-- creamos tabla intermedia en la relacion entre Recambios y Reparaciones.--
CREATE TABLE [Incluyen]
(
[Unidades] SMALLINT NULL,
[CodReparacion] INT NOT NULL,
[CodRecambio] INT NOT NULL
)
GO
-- creamos la relacion Entre Recambios y Reparaciones --
ALTER TABLE Incluyen ADD CONSTRAINT FK_CodRecambio
FOREIGN KEY (CodRecambio) REFERENCES Recambios(CodRecambio)
ON UPDATE cascade
ON DELETE cascade
GO
ALTER TABLE Incluyen ADD CONSTRAINT FK_CodRepara3
FOREIGN KEY (CodReparacion) REFERENCES Reparaciones(CodReparacion)
ON UPDATE cascade
ON DELETE cascade
GO
--- insertamos datos aleatorios en las tablas creadas --
--Tabla Clientes --
INSERT INTO Clientes VALUES('Ximena','Armendaris',22111111,'Dirección1',77111111);
INSERT INTO Clientes VALUES('Irma','Polanco',22222222,'Dirección2',77222222);
INSERT INTO Clientes VALUES('Francisco','Martínez',22333333,'Dirección3',77333333);
INSERT INTO Clientes VALUES('José','Manuel Laínez',22444444,'Dirección4',77444444);
INSERT INTO Clientes VALUES('Luis','López',22555555,'Dirección5',77555555);
INSERT INTO Clientes VALUES('Milena','Fuentes',22666666,'Dirección6',77666666);
INSERT INTO Clientes VALUES('Susana','Mendoza de Cartagena',22443456,'Dirección7',77234567);
INSERT INTO Clientes VALUES('Alberto','Jiménez',22888888,'Dirección8',77888888);
INSERT INTO Clientes VALUES('Beatriz','Ramírez',22999999,'Dirección9',77999999);
--Tabla Vehiculo --
INSERT INTO Vehiculos VALUES(22111111,'subaru','model1',20130112,'color1',1);
INSERT INTO Vehiculos VALUES(22222222,'nissan','model2',20131012,'color2',5);
INSERT INTO Vehiculos VALUES(22333333,'renault','model3',20121012,'color3',5);
INSERT INTO Vehiculos VALUES(22444444,'mazda','model4',20120112,'color4',7);
INSERT INTO Vehiculos VALUES(22555555,'BMW','model5',20120112,'color5',2);
INSERT INTO Vehiculos VALUES(22666666,'Honda','model6',20111112,'color6',3);
INSERT INTO Vehiculos VALUES(22443456,'Toyota','model7',20110512,'color7',4);
INSERT INTO Vehiculos VALUES(22888888,'Peugeot','model8',20101212,'color8',6);
INSERT INTO Vehiculos VALUES(22999999,'Audi','model9',20101112,'color9',7);
INSERT INTO Vehiculos VALUES(22999959,'Audi','model9',20101112,'color9',8);
INSERT INTO Vehiculos VALUES(22999955,'Audi','model9',20101112,'color9',8);
INSERT INTO Vehiculos VALUES(22999945,'Audi','model9',20101112,'color9',9);
--Tabla Empleados --
INSERT INTO Empleados VALUES('Pedro','Armendaris',22111111,'Dirección1',22222,77111111,20101112,'Mecanico');
INSERT INTO Empleados VALUES('Tomas','Polanco',22222222,'Dirección2',22222,77222222,20101112,'Electricista');
INSERT INTO Empleados VALUES('Francisco','Martínez',22333333,'Dirección3',22222,77333333,20101112,'Mecanico');
INSERT INTO Empleados VALUES('José','Manuel Laínez',22444444,'Dirección4',22222,77444444,20101112,'Electricista');
INSERT INTO Empleados VALUES('Luis','López',22555555,'Dirección5',22222,77555555,20101112,'Electricista');
INSERT INTO Empleados VALUES('Milena','Fuentes',22666666,'Dirección6',22222,77666666,20101112,'Mecanico');
INSERT INTO Empleados VALUES('Susana','Mendoza de Cartagena',22443456,'Dirección7',22222,77234567,20101112,'Chapista');
INSERT INTO Empleados VALUES('Alberto','Jiménez',22888888,'Dirección8',22222,77888888,20101112,'Chapista');
INSERT INTO Empleados VALUES('Beatriz','Ramírez',22999999,'Dirección9',22222,77999999,20101112,'Chapista');
--Tabla Recambios --
INSERT INTO Recambios VALUES('bujias','gr',200,10);
INSERT INTO Recambios VALUES('piston','gr',20,50);
INSERT INTO Recambios VALUES('Frenos','kg',201,50);
INSERT INTO Recambios VALUES('Amortiguador','gr',20,70);
INSERT INTO Recambios VALUES('Deposito gasolina','kg',209,20);
INSERT INTO Recambios VALUES('refrigerante','l',200,30);
INSERT INTO Recambios VALUES('limpiaprabrisa','l',230,40);
INSERT INTO Recambios VALUES('cuadro de mandos','gr',24,60);
INSERT INTO Recambios VALUES('bombillas','gr',300,70);
-- Tabla Reparaciones --
INSERT INTO Empleados VALUES(2010-11-12,12000.0,'Armendaris',22111111,'Dirección1',22222,77111111,'Mecanico');
INSERT INTO Empleados VALUES(2010-11-12,12000.0,'Polanco',22222222,'Dirección2',22222,77222222,'Electricista');
INSERT INTO Empleados VALUES(2010-11-12,12000.0,'Martínez',22333333,'Dirección3',22222,77333333,'Mecanico');
INSERT INTO Empleados VALUES(2010-11-12,'José','Manuel Laínez',22444444,'Dirección4',22222,77444444,'Electricista');
INSERT INTO Empleados VALUES(2010-11-12,'Luis','López',22555555,'Dirección5',22222,77555555,'Electricista');
INSERT INTO Empleados VALUES(2010-11-12,''Milena','Fuentes',22666666,'Dirección6',22222,77666666,Mecanico');
INSERT INTO Empleados VALUES(2010-11-12'Susana','Mendoza de Cartagena',22443456,'Dirección7',22222,77234567,,'Chapista');
INSERT INTO Empleados VALUES(2010-11-12,''Alberto','Jiménez',22888888,'Dirección8',22222,77888888,Chapista');
INSERT INTO Empleados VALUES(2010-11-12,''Beatriz','Ramírez',22999999,'Dirección9',22222,77999999,Chapista');
-- Tabla Actuaciones --
INSERT INTO Recambios VALUES('Cambio Bujias',2,20.10);
INSERT INTO Recambios VALUES('Sustitucion frenos',5,50.00);
INSERT INTO Recambios VALUES('Revision niveles',1,10.00);
INSERT INTO Recambios VALUES('Contrapesado',3,15.00);
INSERT INTO Recambios VALUES('Cambio luces',1.5,20.00);
INSERT INTO Recambios VALUES('Cambio de aceite',2,10.00);
este es el codigo complemo de mi BD, tengo las fecha como "int" que es la unica manera que encuentro para rellenar las columnas fechas con valores pero me interesaria poder hacerlo correctamente.