我想從兩個不同的列和IDENTITY創建一個複雜的主鍵。例如:SQL複雜主鍵
我的表:
create table Location (
locationID int primary key,
lat int not null,
lng int not null,
)
lat = 43
lng = 567
我想主鍵值會像下面這樣:
locationID = 43.567-1
「-1」將增加,如果已經有一個locationID以「43.567」開頭。
有沒有可能?
我認爲你應該重新考慮你的數據庫模式。如果'lat' /'long'確實是複合主鍵,爲什麼要使用'locationID'?爲什麼你想要有相同的緯度/經度的多個位置ID?它只是沒有任何意義。 lat/long不應該是'int',並且'locationID'如果你強制填充它,那麼它將不再是'identity'。 –
感謝您的參考,但我在這裏寫的只是一個例子。該想法稍後將使用密鑰的組合方式以便以不同方式理解和使用它。 –
在主要/候選鍵中編碼信息是一個壞主意。搜索重新[智能/智能鍵](http://stackoverflow.com/a/31397135/3404097)。 – philipxy