Sql Server 2005
Har dessa tabeller.
CREATE TABLE [Garage]
(
[Id] [int] IDENTITY (1, 1) NOT FOR REPLICATION NOT NULL ,
[Title] [nvarchar] (50) NOT NULL ,
CONSTRAINT [PK_Garage] PRIMARY KEY CLUSTERED
( [Id] ) ON [PRIMARY]
) ON [PRIMARY]
go
CREATE TABLE [Truck]
(
[Id] [int] IDENTITY (1, 1) NOT FOR REPLICATION NOT NULL ,
[GarageId] [int] NOT NULL ,
[Title] [nvarchar] (50) NOT NULL ,
CONSTRAINT [PK_Truck] PRIMARY KEY CLUSTERED
( [Id] ) ON [PRIMARY]
) ON [PRIMARY]
go
CREATE TABLE [Driver]
(
[Id] [int] IDENTITY (1, 1) NOT FOR REPLICATION NOT NULL ,
[GarageId] [int] NOT NULL ,
[Title] [nvarchar] (50) NOT NULL ,
CONSTRAINT [PK_Driver] PRIMARY KEY CLUSTERED
( [Id] ) ON [PRIMARY]
) ON [PRIMARY]
go
CREATE TABLE [DriverSpecificTrucks]
(
[DriverId] int NOT NULL PRIMARY KEY(DriverId, TruckId) FOREIGN KEY REFERENCES dbo.Driver(Id),
[TruckId] int NOT NULL FOREIGN KEY REFERENCES dbo.Truck(Id)
)
CREATE INDEX DriverSpecificTrucks_index ON dbo.DriverSpecificTrucks(TruckId)
go
Vad jag vill göra är att ta ut alla trucks för ett visst garage (@garageid). Men vissa trucks är bundna till specifika drivers och får då bara tas ut om driver(@driverid) är rätt och får inte tas ut om de är bundna till någon annan driver.
Hoppas ni förstår? Tack.