Nie możesz tego zrobić bezpośrednio — co możesz zrób to:
- utwórz kolumnę z automatycznym przyrostem do obsługi części numerycznej
- dodaj kolumnę obliczaną który łączy prefiks ciągu i liczbę
Spróbuj więc czegoś takiego:
CREATE TABLE dbo.YourTable
(ID INT IDENTITY(1,1) NOT NULL,
StringPrefix NVARCHAR(10) NOT NULL,
IDandPrefix AS ISNULL(StringPrefix + CAST(ID AS NVARCHAR(10)), 'X') PERSISTED
)
Teraz, gdy wstawiasz wiersze w ten sposób:
INSERT INTO dbo.YourTable(StringPrefix) VALUES('A'), ('B'), ('A')
powinieneś otrzymać wiersze w ten sposób:
ID StringPrefix IDandPrefix
1 A A1
2 B B2
3 A A3
I możesz zdefiniować swój klucz podstawowy na tym IDandPrefix
również kolumna:
ALTER TABLE dbo.YourTable
ADD CONSTRAINT PK_YourTable PRIMARY KEY CLUSTERED (IDandPrefix)