2009-10-09 4 views

Antwort

11

Im Design-Modus bilden, markieren beide Spalten kopieren und einfügen gesetzt Primärschlüssel

4

markieren die beiden Reihen In der Tabellenentwurfsansicht und durch Klicken auf das Schlüsselsymbol sind sie nun ein zusammengesetzter Primärschlüssel.

Ich bin mir Ihrer Frage nicht sicher, aber nur eine Spalte pro Tabelle darf eine IDENTITY-Spalte sein, nicht beides.

30
create table my_table (
    id_part1 int not null, 
    id_part2 int not null, 
    primary key (id_part1, id_part2) 
) 
56

hier ist ein Code, es zu tun:

-- Sample Table 
create table myTable 
(
    Column1 int not null, 
    Column2 int not null 
) 
GO 

-- Add Constraint 
ALTER TABLE myTable 
    ADD CONSTRAINT pk_myConstraint PRIMARY KEY (Column1,Column2) 
GO 

ich die Einschränkung als eine separate Erklärung hinzugefügt, weil ich Ihre Tabelle vermuten bereits erstellt wurde.

+0

ich denke, diese Antwort passt, da Sie diese im Abfragefenster von SSMS ausführen können ...;) – Sung

+1

Scripting FTW und für explizite Benennung! Die externen 'ADD PRIMARY KEY'- und internen' PRIMARY KEY'-Definitionen geben den Schlüsseln zufällige Namen, was es zu einem Schmerz machen kann, dass der Bajingo, der wozu gehört, wenn Sie nicht die db-diagram + -Tabellen haben. – Daevin

302

enter image description here

  1. Öffnen Sie die Designtisch Registerkarte
  2. Markieren Sie zwei INT Felder (Strg/Shift + Klick auf die grauen Blöcke in der ersten Spalte)
  3. Rechtsklick -> Set Primärschlüssel
+18

Ich wünschte, ich könnte zweimal abstimmen - das Bild ist eine nette Geste. – CJM

+2

Um mehrere Felder hervorzuheben, klicken Sie auf die Blöcke vor den Spalten "Spaltenname" und "Datentyp" und so. Strg/Shift + Durch Klicken auf die Spaltennamenfelder wird nichts gemacht. – Pimgd

+3

Wenn also eine Zeichenfolge und die andere ein Int ist, ist das nicht möglich? Scheint nicht zu sein ... –

2
create table myTable 
(
    Column1 int not null, 
    Column2 int not null 
) 
GO 


ALTER TABLE myTable 
    ADD PRIMARY KEY (Column1,Column2) 
GO 
6

die Tabellen-Designer in SQL Server Management Studio Aufmachen (rechts~~POS=TRUNC auf Tabelle und s elect ‚Design‘)

Halten Sie die Strg-Taste markieren zwei oder mehr Spalten in der linken Tabellenrand

Hit der kleine ‚Schlüssel‘ auf der Standard-Menüleiste am oberen Rand

Du bist getan ..

:-)

Verwandte Themen