1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| BEGIN TRANSACTION
GO
-- 2-1 - Créez une table temporaire ayant exactement la même structure que la table Produit
CREATE TABLE dbo.Tmp_Produit
(
IdProduit INT NOT NULL IDENTITY (1, 1),
Libelle VARCHAR(60) NULL
)
ON [PRIMARY]
GO
-- 2-2 - Autorisez l'insertion dans l'unique colonne (IdProduit) de la table
-- Tmp_Produit, ayant la propriété IDENTITY
SET IDENTITY_INSERT dbo.Tmp_Produit ON
GO
-- 2-3 - Copiez les données de la table Produits vers la table temporaire Tmp_Produit
IF EXISTS(SELECT * FROM dbo.Produit)
EXEC('INSERT INTO dbo.Tmp_Produit (IdProduit, Libelle)
SELECT IdProduit, Libelle FROM dbo.Produit WITH (HOLDLOCK TABLOCKX)')
GO
-- 2-4 Interdisez l'insertion dans l'unique colonnne (IdProduit) de la table
-- Tmp_Produit, ayant la propriété IDENTITY
SET IDENTITY_INSERT dbo.Tmp_Produit OFF
GO
-- 2-5 - Supprimez, après avoir copié les données dans la table temporaire,
-- la table originale Produit
DROP TABLE dbo.Produit
GO
-- 2-6 - Renommez la table temporaire 'Tmp_Produit' en 'Produit'.
EXECUTE sp_rename N'dbo.Tmp_Produit', N'Produit', 'OBJECT'
GO
--
COMMIT
GO |
Partager