Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Согласованное форматирование упрощает Transact-SQL (T-SQL) для чтения, проверки и обслуживания, особенно если несколько пользователей участвуют в одной базе кода. Расширение MSSQL для Visual Studio Code включает встроенный SQL форматировщик (Preview), который можно запускать по требованию, настраивать автоматическое форматирование при сохранении и настраивать через настройки Visual Studio Code.
Функциональность форматирования T-SQL в расширении MSSQL основана на ScriptDOM — открытой .NET-библиотеке, которая анализирует T-SQL и генерирует скрипты на основе абстрактных синтаксических деревьев.
Формат по запросу
Вы можете отформатировать T-SQL в любом окне редактора. Форматировщик работает со всем документом или только с выбранным текстом.
Для форматирования T-SQL по требованию используйте один из следующих методов:
Контекстное меню: Кликните правой кнопкой мыши в окне редактора T-SQL и выберите Формат документа или Выбор формата.
Палитра команд: запустить формат документа или выбор формата.
Клавиша клавиатуры: для форматирования документа нажмите Shift+Alt+F на Windows и Linux или Shift+Option+F на macOS. Для выбора формата нажмите Ctrl+K, Ctrl+F на Windows и Linux или Cmd+K, Cmd+F на macOS.
Форматирование при сохранении
В Visual Studio Code стандартная настройка редактора управляет форматом при сохранении, а не отдельная настройка форматировщика MSSQL.
Используйте следующие настройки в файле settings.json Visual Studio Code, чтобы автоматически форматировать код T-SQL при каждом сохранении файла:
{
"[sql]": {
"editor.formatOnSave": true
}
}
Настройка параметров форматирования
Настройте форматирование в интерфейсе Visual Studio Code Settings или в пользовательском или рабочем пространствеsettings.json.
В редакторе настроек выполните поиск Mssql>Format , чтобы увидеть доступные варианты. В settings.json используйте соответствующие настройки mssql.format.*.
Форматировщик предварительного просмотра по умолчанию включён. Его опции используют пространство имён
mssql.format.options.*.Пять существующих настроек средства форматирования по-прежнему доступны, когда включено средство форматирования предварительного просмотра. Форматировщик предварительного просмотра добавляет настройки
mssql.format.options.*.
Поддерживаемые параметры
В таблицах сначала перечислены существующие настройки средства форматирования, а затем — настройки средства форматирования для предварительного просмотра.
Существующие настройки форматора
| Setting | Тип | По умолчанию | Description |
|---|---|---|---|
mssql.format.alignColumnDefinitionsInColumns |
bool | false |
Выровняйте определения столбцов по столбцам. |
mssql.format.datatypeCasing |
enum | none |
Форматируйте типы данных как uppercase, lowercase, или none (не отформатировано). |
mssql.format.keywordCasing |
enum | none |
Форматируйте ключевые слова как uppercase, lowercase, или none (не форматировано). |
mssql.format.placeCommasBeforeNextStatement |
bool | false |
Размещайте запятые в начале каждого элемента в списке, например , mycolumn2, вместо в конце, например mycolumn1,. |
mssql.format.placeSelectStatementReferencesOnNewLine |
bool | false |
Размещайте ссылки в инструкции SELECT на отдельных строках. Для SELECT C1, C2 FROM T1, и C1, и C2 расположены на отдельных линиях. |
Просмотр настроек формировщика
Эти mssql.format.options.* настройки добавляются поверх существующих настроек форматера при включении форматера предварительного просмотра.
General
| Setting | Тип | По умолчанию | Description |
|---|---|---|---|
mssql.format.enablePreviewFormatter |
bool | true |
Используйте SQL-форматировщик (предварительный просмотр). |
mssql.format.showParseErrorNotification |
bool | true |
Показывайте уведомление, когда форматор не может полностью разобрать T-SQL. |
mssql.format.options.sqlVersion |
enum | sql170 |
Версия T-SQL использовалась для разбора и генерации отформатированных скриптов. |
mssql.format.options.sqlEngineType |
enum | all |
Тип ядра базы данных, используемый для разбора и генерации форматированных скриптов. Допустимые значения: all, standalone и sqlAzure. |
Выравнивание
| Setting | Тип | По умолчанию | Description |
|---|---|---|---|
mssql.format.options.alignClauseBodies |
bool | true |
Выровняйте тела FROM, WHERE, GROUP BY и аналогичных конструкций. |
mssql.format.options.alignColumnDefinitionFields |
bool | true |
Выровняйте поля определения столбца, такие как имя, тип и ограничения. |
mssql.format.options.alignSetClauseItem |
bool | true |
Выравнивание SET элементов предложения в UPDATE инструкциях. |
Paths
| Setting | Тип | По умолчанию | Description |
|---|---|---|---|
mssql.format.options.allowExternalLanguagePaths |
bool | true |
Разрешить внешнему языковому контенту использовать пути к файлам. |
mssql.format.options.allowExternalLibraryPaths |
bool | true |
Разрешить внешнему контенту библиотеки использовать пути к файлам. |
Formatting
| Setting | Тип | По умолчанию | Description |
|---|---|---|---|
mssql.format.options.asKeywordOnOwnLine |
bool | true |
Поместите AS на отдельной строке. |
mssql.format.options.keywordCasing |
enum | uppercase |
Стиль регистра ключевых слов. Допустимые значения: uppercase, lowercase и pascalCase. |
mssql.format.options.preserveComments |
bool | true |
Сохранение комментариев во время форматирования. |
mssql.format.options.numNewlinesAfterStatement |
int | 1 |
Количество разрывов строк после каждого утверждения, от 0 до 5. |
Отступы
| Setting | Тип | По умолчанию | Description |
|---|---|---|---|
mssql.format.options.indentSetClause |
bool | false |
Добавить отступ для условия SET в инструкциях UPDATE. |
mssql.format.options.indentViewBody |
bool | false |
Сделайте отступ для текста VIEW. |
Многострочный
| Setting | Тип | По умолчанию | Description |
|---|---|---|---|
mssql.format.options.multilineInsertSourcesList |
bool | true |
INSERT источники как многострочные. |
mssql.format.options.multilineInsertTargetsList |
bool | true |
INSERT столбцы как многострочные. |
mssql.format.options.multilineSelectElementsList |
bool | true |
SELECT столбцы как многострочные. |
mssql.format.options.multilineSetClauseItems |
bool | true |
SET элементы в несколько строк. |
mssql.format.options.multilineViewColumnsList |
bool | true |
VIEW столбцы как многострочные. |
mssql.format.options.multilineWherePredicatesList |
bool | true |
WHERE предикаты как многострочные. |
Новая строка
| Setting | Тип | По умолчанию | Description |
|---|---|---|---|
mssql.format.options.newLineBeforeCloseParenthesisInMultilineList |
bool | true |
Новая строка перед закрытием скобок в многострочном списке. |
mssql.format.options.newLineBeforeFromClause |
bool | true |
Новая фраза перед FROM пунктом. |
mssql.format.options.newLineBeforeGroupByClause |
bool | true |
Новая фраза перед GROUP BY пунктом. |
mssql.format.options.newLineBeforeHavingClause |
bool | true |
Новая фраза перед HAVING пунктом. |
mssql.format.options.newLineBeforeJoinClause |
bool | true |
Новая фраза перед JOIN пунктом. |
mssql.format.options.newLineBeforeOffsetClause |
bool | true |
Новая фраза перед OFFSET пунктом. |
mssql.format.options.newLineBeforeOpenParenthesisInMultilineList |
bool | false |
Новая строка перед открытой скобкой в многострочном списке. |
mssql.format.options.newLineBeforeOrderByClause |
bool | true |
Новая фраза перед ORDER BY пунктом. |
mssql.format.options.newLineBeforeOutputClause |
bool | true |
Новая фраза перед OUTPUT пунктом. |
mssql.format.options.newLineBeforeWhereClause |
bool | true |
Новая фраза перед WHERE пунктом. |
mssql.format.options.newLineBeforeWindowClause |
bool | true |
Новая фраза перед WINDOW пунктом. |
mssql.format.options.newlineFormattedCheckConstraint |
bool | false |
Ограничение, отформатированное с помощью CHECK новой строки. |
mssql.format.options.newLineFormattedIndexDefinition |
bool | false |
Определение индекса в формате Newline. |
Spacing
| Setting | Тип | По умолчанию | Description |
|---|---|---|---|
mssql.format.options.spaceBetweenDataTypeAndParameters |
bool | true |
Пробел между типом данных и скобками, например VARCHAR (255). |
mssql.format.options.spaceBetweenParametersInDataType |
bool | true |
Пространство между параметрами в типах данных. |
Пример файлов настроек
{
"mssql.format.options.keywordCasing": "lowercase",
"mssql.format.options.alignClauseBodies": false,
"mssql.format.options.numNewlinesAfterStatement": 2,
"[sql]": {
"editor.formatOnSave": true
}
}
Установите средство форматирования по умолчанию
Чтобы установить расширение MSSQL по умолчанию, выберите Configure Default Formatter...>SQL Server (mssql) или добавить следующую конфигурацию вsettings.json:
{
"[sql]": {
"editor.defaultFormatter": "ms-mssql.mssql"
}
}