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 34 35 36 37
|
il est possible de débrancher ou rebrancher ce compteur en manipulant la valeur de la variable IDENTITY_INSERT (ON ou OFF)
il est possible de connaître la dernière valeur de clef insérée dans la table à l'aide de la variable @@IDENTITY
Exemple pour SQL Server v7 :
-- Création d'une table avec colonne auto incrémentée :
CREATE TABLE maTable
(LaClef INTEGER IDENTITY(6852,1) NOT NULL PRIMARY KEY,
UneColonne VARCHAR(32))
-- Récupération de la dernière valeur insérée :
INSERT INTO maTable (UneColonne) VALUES ('exemple')
SELECT @@IDENTITY
----------------------------------------
6852
-- Débranchement de l'autoincrément pour insertion manuelle :
SET IDENTITY_INSERT maTable ON
INSERT INTO maTable (LaClef, UneColonne)
VALUES (623, 'exemple 2')
INSERT INTO maTable (LaClef, UneColonne)
VALUES (998877, 'exemple 3')
SET IDENTITY_INSERT maTable OFF
-- Vérification
INSERT INTO maTable (UneColonne) VALUES ('exemple 4')
SELECT * FROM maTable
LaClef UneColonne
----------- --------------------------------
623 exemple 2
6852 exemple
998877 exemple 3
998878 exemple 4 |
Partager