feat(db): add Materiel, Accessoire and MaterielAccessoire models
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
BEGIN TRY
|
||||
|
||||
BEGIN TRAN;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE [dbo].[materiel] (
|
||||
[id] INT NOT NULL IDENTITY(1,1),
|
||||
[nom] NVARCHAR(1000) NOT NULL,
|
||||
[marque] NVARCHAR(1000) NOT NULL,
|
||||
[modele] NVARCHAR(1000) NOT NULL,
|
||||
[reference] NVARCHAR(1000) NOT NULL,
|
||||
[numero_inventaire] NVARCHAR(1000) NOT NULL,
|
||||
[numero_serie] NVARCHAR(1000) NOT NULL,
|
||||
[statut] NVARCHAR(1000) NOT NULL,
|
||||
[etat_general] NVARCHAR(1000) NOT NULL,
|
||||
[categorie_id] INT NOT NULL,
|
||||
[campus_id] INT NOT NULL,
|
||||
[actif] BIT NOT NULL CONSTRAINT [materiel_actif_df] DEFAULT 1,
|
||||
[created_at] DATETIME2 NOT NULL CONSTRAINT [materiel_created_at_df] DEFAULT CURRENT_TIMESTAMP,
|
||||
[updated_at] DATETIME2 NOT NULL,
|
||||
CONSTRAINT [materiel_pkey] PRIMARY KEY CLUSTERED ([id])
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE [dbo].[accessoire] (
|
||||
[id] INT NOT NULL IDENTITY(1,1),
|
||||
[nom] NVARCHAR(1000) NOT NULL,
|
||||
[description] NVARCHAR(1000) NOT NULL,
|
||||
[actif] BIT NOT NULL CONSTRAINT [accessoire_actif_df] DEFAULT 1,
|
||||
[created_at] DATETIME2 NOT NULL CONSTRAINT [accessoire_created_at_df] DEFAULT CURRENT_TIMESTAMP,
|
||||
[updated_at] DATETIME2 NOT NULL,
|
||||
CONSTRAINT [accessoire_pkey] PRIMARY KEY CLUSTERED ([id])
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE [dbo].[materiel_accessoire] (
|
||||
[id] INT NOT NULL IDENTITY(1,1),
|
||||
[materiel_id] INT NOT NULL,
|
||||
[accessoire_id] INT NOT NULL,
|
||||
[quantite_attendue] INT NOT NULL,
|
||||
[obligatoire] BIT NOT NULL,
|
||||
CONSTRAINT [materiel_accessoire_pkey] PRIMARY KEY CLUSTERED ([id])
|
||||
);
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE [dbo].[materiel] ADD CONSTRAINT [materiel_categorie_id_fkey] FOREIGN KEY ([categorie_id]) REFERENCES [dbo].[categorie_materiel]([id]) ON DELETE NO ACTION ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE [dbo].[materiel] ADD CONSTRAINT [materiel_campus_id_fkey] FOREIGN KEY ([campus_id]) REFERENCES [dbo].[campus]([id]) ON DELETE NO ACTION ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE [dbo].[materiel_accessoire] ADD CONSTRAINT [materiel_accessoire_materiel_id_fkey] FOREIGN KEY ([materiel_id]) REFERENCES [dbo].[materiel]([id]) ON DELETE NO ACTION ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE [dbo].[materiel_accessoire] ADD CONSTRAINT [materiel_accessoire_accessoire_id_fkey] FOREIGN KEY ([accessoire_id]) REFERENCES [dbo].[accessoire]([id]) ON DELETE NO ACTION ON UPDATE CASCADE;
|
||||
|
||||
COMMIT TRAN;
|
||||
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
|
||||
IF @@TRANCOUNT > 0
|
||||
BEGIN
|
||||
ROLLBACK TRAN;
|
||||
END;
|
||||
THROW
|
||||
|
||||
END CATCH
|
||||
Reference in New Issue
Block a user