В коде Transact-SQL в Visual Studio и SQL Management Studio некоторые, но не все имена таблиц выделены зеленым.

Например, в следующем коде

INSERT INTO library.Parameters (...
INSERT INTO library.Events (...
INSERT INTO library.EventConditions (...
INSERT INTO library.Devices (...

Имена таблиц Параметры и События отображаются зеленым цветом, но имена таблиц EventConditions и Devices не отображаются зеленым цветом. .

2
Steve Crane 26 Мар 2014 в 11:30

2 ответа

Лучший ответ

Параметры и события становятся зелеными, потому что это имя catalog view - Пояснения к просмотрам каталога

Проверьте это.

В частности, sys.events и sys.parameters - это Представления каталога объектов, которые объясняют выделение названий таблиц, упомянутых в вопросе.

1
Steve Crane 26 Мар 2014 в 12:59

Подсветка синтаксиса для SQL довольно упрощена и не может учитывать контекст - любой символ, имеющий особое значение в любом контексте, будет окрашиваться в зависимости от этого значения.

Parameters и Events - два таких символа, поэтому они не помечены так же, как другие имена таблиц (в которых используются символы без специального значения)

Таким же образом, например, в этом CREATE TABLE:

create table T (
    date int,
    ID int
)

date и ID будут выделены по-разному, потому что date также является именем типа данных:

enter image description here

1
Damien_The_Unbeliever 26 Мар 2014 в 11:39