64 votes

Incrémentation automatique de la clé primaire dans les tables SQL

À l'aide de Sql Management Studio Express 2008 l'interface graphique (pas de codage), comment puis-je faire une clé primaire auto-incrémentée?

Laissez-moi vous expliquer: il y a une table qui contient une colonne nommée "id" et les éléments de cette colonne sont des clés primaires. Je veux faire de cette colonne auto-incrémentée, mais comment?

Cheers

125voto

Chris Diver Points 8221
  1. Je suppose que vous êtes dans la conception de la table. Si non: cliquez droit sur le nom de la table - "Conception".
  2. Cliquez sur la colonne requise.
  3. Dans "propriétés de la Colonne" (en bas), faites défiler jusqu'à la "Spécification Identité" de la section, de la développer, puis bascule "(Identité)" à "Oui".

enter image description here

14voto

andrej Points 702
CREATE TABLE "dbo"."TableName"
(
   id int IDENTITY(1,1) PRIMARY KEY NOT NULL,
   name varchar(20),
);

l'instruction insert sera:

INSERT INTO "dbo"."TableName" (name) VALUES ('alpha');
INSERT INTO "dbo"."TableName" (name) VALUES ('beta');

et le résultat de

SELECT id, name FROM "dbo"."TableName";

sera

id    name
--------------------------
1     alpha
2     beta

11voto

Will A Points 16763

Cliquez-droit sur la table dans SSMS, "Design", et cliquez sur la colonne id. Dans les propriétés, définissez l'identité pour être ensemencées @ par exemple 1 et d'avoir incrément de 1 - enregistrer et vous avez terminé.

8voto

mazenchami Points 1

pour ceux qui ont de la de la problème de il encore ne pas le laisser vous enregistrer une fois qu'il est modifié en fonction de réponse ci-dessous, procédez de la manière suivante:

outils -> options -> les concepteurs -> Table et des Concepteurs de Base de données -> décocher la case "empêcher l'enregistrement des modifications qui exigent la table de re-création" de la boîte -> OK

et essayez de l'enregistrer comme il devrait fonctionner maintenant

7voto

Cambium Points 4070

Je n'ai pas d'Exprimer Management Studio sur cette machine, je vais donc basé sur la mémoire. Je pense que vous devez définir la colonne "IDENTITÉ", et il devrait y avoir un [+] dans les propriétés où vous pouvez développer, et de définir l'auto-incrémentation de vrai.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X