Maison > base de données > tutoriel mysql > Comment gérer IDENTITY_INSERT dans SQL Server 2008 ?

Comment gérer IDENTITY_INSERT dans SQL Server 2008 ?

Linda Hamilton
Libérer: 2025-01-09 08:46:44
original
928 Les gens l'ont consulté

How to Manage IDENTITY_INSERT in SQL Server 2008?

Contrôle d'IDENTITY_INSERT dans SQL Server 2008

L'insertion de données dans des tables avec des colonnes d'identité dans SQL Server 2008 nécessite parfois de remplacer la génération automatique de valeurs d'identité. Tenter une insertion directe avec une valeur spécifiée lorsque IDENTITY_INSERT est désactivé entraînera une erreur.

Pour insérer des valeurs explicites, vous devez activer temporairement IDENTITY_INSERT. Cela se fait à l'aide de la commande T-SQL suivante :

SET IDENTITY_INSERT DatabaseName.SchemaName.TableName ON;
Copier après la connexion

Remplacez DatabaseName, SchemaName et TableName par vos noms de base de données, de schéma et de table respectivement.

Vous pouvez désormais insérer des données avec une valeur spécifiée pour la colonne d'identité :

INSERT INTO YourTable (IdentityColumn, Column2, Column3, ...)
VALUES (YourIdentityValue, Value2, Value3, ...);
Copier après la connexion

Essentiellement, toujours n'oubliez pas de désactiver IDENTITY_INSERT une fois vos insertions terminées :

SET IDENTITY_INSERT YourTable OFF;
Copier après la connexion

Ne pas désactiver IDENTITY_INSERT peut entraîner des incohérences et des erreurs.

Vous pouvez également gérer ce paramètre via SQL Server Management Studio (SSMS). Localisez votre table dans l'Explorateur d'objets, cliquez avec le bouton droit, sélectionnez « Propriétés », accédez à l'onglet « Spécification d'identité » et cochez « Autoriser IDENTITY_INSERT ». Cependant, n'oubliez pas qu'il s'agit d'un équivalent graphique des commandes T-SQL ; le mécanisme sous-jacent reste le même. Le contrôle direct T-SQL offre plus de flexibilité programmatique.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal