32 lines
1.2 KiB
Transact-SQL
32 lines
1.2 KiB
Transact-SQL
CREATE TABLE [dbo].[AnagMacchine] (
|
|
[idxMacchina] INT IDENTITY (1, 1) NOT NULL,
|
|
[idxImpianto] INT NULL,
|
|
[codMacchina] NVARCHAR (50) NULL,
|
|
[nomeMacchina] NVARCHAR (250) NULL,
|
|
[modello] NVARCHAR (250) NULL,
|
|
[matricola] NVARCHAR (50) NULL,
|
|
[anno] INT NULL,
|
|
[kgPeso] FLOAT (53) CONSTRAINT [DF_AnagMacchine_kgPeso] DEFAULT ((0)) NOT NULL,
|
|
[kwConsumo] FLOAT (53) CONSTRAINT [DF_AnagMacchine_kwConsumo] DEFAULT ((0)) NOT NULL,
|
|
[funzDal] DATETIME NULL,
|
|
[funzAl] DATETIME NULL,
|
|
CONSTRAINT [PK_AnagMacchine] PRIMARY KEY CLUSTERED ([idxMacchina] ASC),
|
|
CONSTRAINT [FK_AnagMacchine_AnagImpianti] FOREIGN KEY ([idxImpianto]) REFERENCES [dbo].[AnagImpianti] ([idxImpianto]) ON UPDATE CASCADE
|
|
);
|
|
|
|
|
|
GO
|
|
|
|
CREATE TRIGGER updateAssociazioneFamMacchine
|
|
ON dbo.AnagMacchine
|
|
FOR INSERT
|
|
AS
|
|
|
|
-- aggiungo le eventuali "macchine orfane" alla fam macchine di base (1 = TUTTE)
|
|
INSERT INTO Macchine2FamMacchine(idxMacchina, idxFamMacchine)
|
|
(
|
|
SELECT am.idxMacchina, 1 FROM anagMacchine am LEFT OUTER JOIN macchine2FamMacchine m2f
|
|
ON am.idxMacchina=m2f.idxMacchina
|
|
WHERE m2f.idxmacchina IS NULL
|
|
)
|