Index na kolumne która nazywa się jak jedno z kluczowych słów

0

Witam, chcę stworzyć widok z indeksem na kolumnę która nazywa się key

W bazie jest ona stworzona w ten sposób: [key] NVARCHAR(MAX)

CREATE VIEW nazwa_widoku WITH SCHEMABINDING
AS 
SELECT [key]
FROM [dbo].[tabela]
WHERE type_id IN (16, 17, 18)
GO
	CREATE UNIQUE INDEX IX_key
	ON nazwa_widoku (key)
GO

Błąd: Incorrect syntax near the keyword 'key'.

0

Próbowałeś wszędzie wstawić [key] zamiast key?

CREATE VIEW nazwa_widoku WITH SCHEMABINDING
AS 
SELECT [KEY]
FROM [dbo].[tabela]
WHERE type_id IN (16, 17, 18)
GO
    CREATE UNIQUE INDEX IX_key
    ON nazwa_widoku ([key])
GO
0

Taaak, w różny sposób próbowałem i nic

0

Coś takiego działa http://rextester.com/FBQ6112

--Sql Server 2014 Express Edition

create table tabela(a int, [key] NVARCHAR(400), type_id int)
go
insert into tabela values (1,'2lkdfj',3)
insert into tabela values (11,'42dfklsj',16)
insert into tabela values (22,'666fdsf',18)
go
CREATE VIEW nazwa_widoku WITH SCHEMABINDING
AS 
SELECT [KEY]
FROM [dbo].[tabela]
WHERE type_id IN (16, 17, 18)
GO
CREATE UNIQUE clustered INDEX IX_key ON nazwa_widoku ([key])
GO
select * from tabela
select * from nazwa_widoku

select * from sys.indexes where name = 'ix_key'

1 użytkowników online, w tym zalogowanych: 0, gości: 1