我有一個MS訪問數據庫,我想使用SQL添加一個具有唯一ID的新列。 例如:添加列SQL訪問
Name Sales ID
Lucas 20 0.00001
Mike 10 0.00002
John 25 0.00003
我正在自學SQL。有人可以幫我嗎? :)
謝謝!
我有一個MS訪問數據庫,我想使用SQL添加一個具有唯一ID的新列。 例如:添加列SQL訪問
Name Sales ID
Lucas 20 0.00001
Mike 10 0.00002
John 25 0.00003
我正在自學SQL。有人可以幫我嗎? :)
謝謝!
通過「列有唯一的ID」你的意思是一個自動編號字段假設:
ALTER TABLE MyTable ADD COLUMN ID AUTOINCREMENT;
然後,爲了使主鍵:
ALTER TABLE MyTable ADD PRIMARY KEY(ID);
據我所知NOT NULL是隱含的,如果您使用AUTOINCREMENT類型,雖然它是無害的(也許更好的做法),使其明確像其他答案一樣... –
完美克里斯,謝謝!你知道我該如何在鏈接表上使用這個Alter Table?它顯示我在這種情況下的錯誤.. – lucasserafim
@lucasserafim不,你不能改變從Access的* linked *表的結構。您需要直接對其他數據庫中的實際表進行更改,然後刷新錶鏈接以使其知道更改。 –
試試這個代碼:
ALTER TABLE "YOUR_TABLE" ADD "FIELD_NAME" UNIQUEIDENTIFIER NOT NULL DEFAULT NewId() PRIMARY KEY
它給我一個錯誤「字段定義中的語法錯誤」並標記UNIQUEIDENTIFIER .. – lucasserafim
您需要更改表(「YOUR_TABLE」)和字段名稱(「FIELD_NAME」)的名稱。例如: ALTER TABLE YOUR_TABLE ADD ID UNIQUEIDENTIFIER NOT NULL DEFAULT NewId()PRIMARY KEY –
這似乎Access 2010中的工作沒有問題啊:
ALTER TABLE MyTable ADD COLUMN ID AUTOINCREMENT NOT NULL
快速打上標記! upvoted在那裏一分鐘之前,我可以;-) –
@ChrisRolliston + 1也爲您的答案。我打算編輯我的答案,以包含添加PRIMARY KEY的語句,但是您打敗了我。 :) –
感謝戈德以及:) – lucasserafim
這裏你向我們展示了你想添加的3條新記錄(行) – apomene
如果你想要學習這個SQL,那麼我非常確定在ms-access中使用DDL需要你寫入它VBA。使用SQLite或SQL Server Compact可能會更好。 –
實際上我有將近10000行,我只想插入一個唯一的ID,但我必須使用MS訪問SQL:/ – lucasserafim