我試圖改變版本列轉換爲十進制(3,1),但它給這個錯誤阿爾特列是一個複合鍵-SQL服務器
對象「PK__SlideVer__E0872D0E86F75C91」是依賴於列「版本」。
fkSlideId是外國key.See圖像
我試圖改變版本列轉換爲十進制(3,1),但它給這個錯誤阿爾特列是一個複合鍵-SQL服務器
對象「PK__SlideVer__E0872D0E86F75C91」是依賴於列「版本」。
fkSlideId是外國key.See圖像
我剛剛向您展示了一個示例示例。
CREATE TABLE TAR1
(
ID INT NOT NULL,
NAME VARCHAR(20) NOT NULL
)
ALTER TABLE TAR1 ADD CONSTRAINT PK_1 PRIMARY KEY(ID,NAME)
ALTER TABLE TAR1 ALTER COLUMN NAME VARCHAR(50) -- will throw an error
ALTER TABLE TAR1 DROP CONSTRAINT PK_1
ALTER TABLE TAR1 ALTER COLUMN NAME VARCHAR(50) not null --You must specify not null
ALTER TABLE TAR1 ADD CONSTRAINT PK_1 PRIMARY KEY(ID,NAME)
我不能創建一個新的表需要更新當前的一個 –
我創建此表時沒有做出約束 –
@SyedKamranAhmed對於那個存在的主鍵,然後用你需要的數據類型改變列並且必須指定非空。經過上述步驟後,您需要再次創建Pk。爲了更好的理解,你可以發佈你的主鍵,外鍵嗎? – Buddi
由於@Buddi指出,你需要改變你列前先刪除主鍵和其他任何依賴的對象。
ALTER TABLE SlideVersion
DROP CONSTRAINT PK__SlideVer__E0872D0E86F75C91
刪除主鍵並改變該列。然後重新創建它。 – Buddi
我試圖放棄主鍵:改變表刪除主鍵(col1,col2),但它並不工作 –
你有什麼錯誤?像以前一樣? – Buddi