PDA

View Full Version : تعیین کلید اصلی با دستور ALTER TABLE



emad4000
سه شنبه 21 شهریور 1385, 02:53 صبح
سلام
من می خوام با دستورات SQL کلید اصلی یه جدول رو عوض کنم
از این دستورات استفاده کردم ولی Error میده

ALTER TABLE my_table ALTER COLUMN my_column int CONSTRAINT temp_name NOT NULL PRIMARY KEY

ALTER TABLE my_table ALTER COLUMN my_column int CONSTRAINT temp_name PRIMARY KEY

ALTER TABLE my_table ALTER COLUMN my_column int NOT NULL PRIMARY KEY

همه جورشو امتحان کردم . ولی پیغام میده که دستورات نزدیک CONSTRAINT اشتباهند
آیا شکل دستور من اشتباهه یا مشکل از جای دیگه است
من خیلی تو MSDN گشتم . ولی چیزی پیدا نکردم

masysh
سه شنبه 21 شهریور 1385, 07:17 صبح
سلام
فکر میکنم باید PK قبلی رو اول Drop کنی.

emad4000
سه شنبه 21 شهریور 1385, 12:50 عصر
اتفاقا این کارو هم کردم ولی فایده نداشت
یعنی در واقع از یه جدول استفاده کردم که PK نداشت . ولی همون Error قبلی رو میده

titbasoft
سه شنبه 21 شهریور 1385, 13:27 عصر
ALTER TABLE my_table add Constraint temp_name PRIMARY KEY (my_column)

emad4000
سه شنبه 21 شهریور 1385, 23:13 عصر
ممنون از جوابتون ولی اگه دقت کرده باشین توی مورد دومی که نوشتم برای Constraint یه اسم هم گذاشتم و همون مشکلو داشت
ولی این عبارت (myCol) که بعد از عبارت PRIMARY KEY گذاشتین رو نگذاشتم . میشه بیشتر در موردش توضیح بدین

titbasoft
چهارشنبه 22 شهریور 1385, 10:29 صبح
پست قبل با توجه به نامگذاری شما ویرایش شد