web-dev-qa-db-fra.com

comment incrémenter automatiquement la clé primaire dans Visual Studio intégré au serveur SQL?

J'utilise Visual Studio 2010 premium et j'ai créé une base de données à l'aide de l'outil de base de données Visual Studio. J'ai défini un champ comme clé primaire et je veux le faire incrémenter automatiquement.

Mais quand je regarde les propriétés, ce n'est pas actif. Je veux dire que je ne peux pas définir à l'aide de l'outil de base de données Visual Studio 2010 premium intégré. Je ne peux pas définir les spécifications d'identité. Est-ce parce que j'utilise Visual Studio 2010 Premium? Comment puis-je effectuer l'incrémentation automatique de la colonne productID?

enter image description here

23

Changez son type de données en int (ou similaire). Vous ne pouvez pas définir une spécification IDENTITY sur une colonne nchar(10).

De CREATE TABLE :

IDENTITÉ

Indique que la nouvelle colonne est une colonne d'identité. Lorsqu'une nouvelle ligne est ajoutée à la table, le moteur de base de données fournit une valeur incrémentielle unique pour la colonne. Les colonnes d'identité sont généralement utilisées avec des contraintes PRIMARY KEY pour servir d'identifiant de ligne unique pour la table. La propriété IDENTITY peut être affectée aux colonnes tinyint, smallint, int, bigint, décimal (p, 0) ou numérique (p, 0) . Une seule colonne d'identité peut être créée par table. Les valeurs par défaut liées et les contraintes DEFAULT ne peuvent pas être utilisées avec une colonne d'identité. La valeur initiale et l'incrémentation ou aucune ne doivent être spécifiées. Si aucun n'est spécifié, la valeur par défaut est (1,1).

(Mon accentuation )

24

Pour faire un incrément automatique de colonne de clé primaire, vous devez le créer en tant que int avec IDENTITY par exemple:

[Id] INT NOT NULL PRIMARY KEY IDENTITY, 

Ou via Visual Studio (2017):

  • Cliquez avec le bouton droit sur la colonne> Propriétés> Spécification d'identité> Est-ce que l'identité> Vrai

enter image description here

0
Andrew