Pour mettre en surbrillance plusieurs champs, cliquez sur les blocs devant les colonnes «nom de colonne» et «type de données» et autres. Ctrl / Shift + Cliquer sur les champs de nom de colonne ne fera rien.
Pimgd
3
Donc, si l'un est une chaîne et l'autre un int, ce n'est pas possible? Ne semble pas être ...
B. Clay Shannon
3
Je voterais contre cela, mais j'ai ensuite réalisé que l'OP demandait spécifiquement comment le faire dans SSMS. Vous devriez toujours écrire les changements de base de données + si vous utilisez des outils comme celui-ci, vous n'apprendrez jamais comment faire les changements par vous
JonnyRaa
2
@JonnyLeeds c'est un cheval très haut sur vous. Quel est le problème avec l'interface graphique si c'est ce que les gens préfèrent?
leinad13
4
@ leinad13 J'ai dû passer une mauvaise journée! Mais le problème majeur est qu'ils ne sont pas reproductibles et cela signifie généralement que les gens font des changements ad hoc incontrôlés et des ajustements pour résoudre les problèmes de base de données / schéma. C'est un très mauvais signe - ils ne sont pas documentés (par exemple en ayant le code à corriger écrit et archivé dans le contrôle de version et / ou en ayant un outil qui applique automatiquement les bons changements à quelle que soit la version de la base de données) et si vous en avez plus d'un l'installation alors vous avez de sérieux problèmes car bientôt les bases de données n'auront plus le même schéma
JonnyRaa
63
voici un code pour le faire:
-- Sample Tablecreatetable myTable
(
Column1 int notnull,
Column2 int notnull)
GO
-- Add ConstraintALTERTABLE myTable
ADDCONSTRAINT pk_myConstraint PRIMARYKEY(Column1,Column2)
GO
J'ai ajouté la contrainte en tant qu'instruction séparée car je suppose que votre table a déjà été créée.
Je suppose que cette réponse convient puisque vous pouvez l'exécuter dans la fenêtre de requête de SSMS ...;)
dance2die
2
Scripting FTW, et pour la dénomination explicite! Les définitions externes ADD PRIMARY KEYet internes PRIMARY KEYdonneront des noms aléatoires aux clés, ce qui peut rendre difficile le bajingo de déterminer qui appartient où si vous n'avez pas le diagramme db + tables.
Daevin
35
createtable my_table (
id_part1 int notnull,
id_part2 int notnull,primarykey(id_part1, id_part2))
En mode conception (clic droit sur le tableau, sélectionner modifier) mettre en évidence les deux colonnes, cliquer avec le bouton droit et choisir définir la clé primaire
Mettez en surbrillance les deux lignes dans la vue de conception de table et cliquez sur l'icône de clé, elles seront désormais une clé primaire composite.
Je ne suis pas sûr de votre question, mais une seule colonne par table peut être une colonne IDENTITY, pas les deux.
voici un code pour le faire:
J'ai ajouté la contrainte en tant qu'instruction séparée car je suppose que votre table a déjà été créée.
la source
ADD PRIMARY KEY
et internesPRIMARY KEY
donneront des noms aléatoires aux clés, ce qui peut rendre difficile le bajingo de déterminer qui appartient où si vous n'avez pas le diagramme db + tables.la source
En mode conception (clic droit sur le tableau, sélectionner modifier) mettre en évidence les deux colonnes, cliquer avec le bouton droit et choisir définir la clé primaire
la source
Ouvrez le concepteur de table dans SQL Server Management Studio (cliquez avec le bouton droit sur la table et sélectionnez «Conception»)
En maintenant la touche Ctrl enfoncée, mettez en surbrillance deux colonnes ou plus dans la marge gauche du tableau
Appuyez sur la petite `` clé '' dans la barre de menu standard en haut
Vous avez terminé..
:-)
la source
Mettez en surbrillance les deux lignes dans la vue de conception de table et cliquez sur l'icône de clé, elles seront désormais une clé primaire composite.
Je ne suis pas sûr de votre question, mais une seule colonne par table peut être une colonne IDENTITY, pas les deux.
la source
la source