Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
La formattazione coerente semplifica la lettura, la revisione e la manutenzione di Transact-SQL (T-SQL), soprattutto quando più persone contribuiscono alla stessa codebase. L'estensione MSSQL per Visual Studio Code include un formattore SQL integrato che puoi eseguire su richiesta, configurare per la formattazione automatica al salvataggio e personalizzare tramite le impostazioni di Visual Studio Code.
La funzionalità di formattazione T-SQL nell'estensione MSSQL è costruita su ScriptDOM, una libreria open source .NET che analizza T-SQL e genera script basati su alberi di sintassi astratti.
Formattare su richiesta
Puoi formattare T-SQL in qualsiasi finestra dell'editor. Il formatatore funziona sull'intero documento o solo sul testo che scegli.
Per formattare T-SQL su richiesta, utilizza uno dei seguenti metodi:
Menu contestuale: clicca con il tasto destro in una finestra di un editor T-SQL e seleziona Formata documento o Selezione formato.
Palette di comandi: esegui il documento di formato o la selezione del formato.
Scorciatoia da tastiera: Per Formatare il documento, premi Shift+Alt+F su Windows e Linux, oppure Shift+Option+F su macOS. Per la selezione del formato, premi Ctrl+K, Ctrl+F su Windows e Linux, oppure Cmd+K, Cmd+F su macOS.
Formato al salvataggio
In Visual Studio Code, l'impostazione standard dell'editor controlla la formattazione al salvataggio, anziché un'impostazione dedicata del formattatore MSSQL.
Usa le seguenti impostazioni nel tuo file Visual Studio Code settings.json per formattare automaticamente T-SQL ogni volta che salvi un file:
{
"[sql]": {
"editor.formatOnSave": true
}
}
Configurare le opzioni di formattazione
Configura la formattazione nell'interfaccia utente delle impostazioni di Visual Studio Code oppure nelle impostazioni utente o dell'area di lavoro settings.json.
Nell'editor Impostazioni, cercaFormatoMssql> per visualizzare le opzioni disponibili. In settings.json, utilizza le impostazioni mssql.format.* corrispondenti.
Impostazioni supportate
Le seguenti impostazioni configurano il formattatore SQL.
Generali
| Setting | Tipo | Default | Descrzione |
|---|---|---|---|
mssql.format.showParseErrorNotification |
bool | true |
Mostra una notifica quando il formatatore non riesce a parizzare completamente il T-SQL. |
mssql.format.options.sqlVersion |
enum | sql170 |
Versione T-SQL utilizzata per analizzare e generare script formattati. |
mssql.format.options.sqlEngineType |
enum | all |
Tipo motore di database utilizzato per parizzare e generare script formattati. I valori validi sono all, standalonee sqlAzure. |
Allineamento
| Setting | Tipo | Default | Descrzione |
|---|---|---|---|
mssql.format.options.alignClauseBodies |
bool | true |
Allineare i corpi di FROM, WHERE, GROUP BY e clausole simili. |
mssql.format.options.alignColumnDefinitionFields |
bool | true |
Allinea i campi di definizione delle colonne, come nomi, tipi di dati e vincoli. |
mssql.format.options.alignSetClauseItem |
bool | true |
Allineare gli elementi di clausola SET nelle istruzioni UPDATE |
mssql.format.options.clauseBodyAlignment |
enum | aligned |
Mantenere i corpi aligned delle clausole con le loro parole chiave oppure posizionarle sulla riga successiva come indented. |
Involucro e identificatori
| Setting | Tipo | Default | Descrzione |
|---|---|---|---|
mssql.format.options.builtInFunctionCasing |
enum | preserve |
Stile di casing per nomi di funzioni integrate supportate, come GETDATE e COALESCE. I valori validi sono preserve, uppercase, lowercase e pascalCase. |
mssql.format.options.identifierBracketing |
enum | preserve |
Preservare, aggiungere o rimuovere i quadri opzionali attorno agli identificatori. I valori validi sono preserve, includeBracketse excludeBrackets. Le parentesi obbligatorie vengono mantenute. |
mssql.format.options.identifierCasing |
enum | preserve |
Stile di involucro per gli identificatori degli oggetti. I valori validi sono preserve, uppercase, lowercase e pascalCase. |
mssql.format.options.keywordCasing |
enum | uppercase |
Stile di scrittura delle parole chiave in maiuscolo/minuscolo. I valori validi sono uppercase, lowercasee pascalCase. |
Paths
| Setting | Tipo | Default | Descrzione |
|---|---|---|---|
mssql.format.options.allowExternalLanguagePaths |
bool | true |
Consentire ai contenuti in lingue esterne di utilizzare i percorsi dei file. |
mssql.format.options.allowExternalLibraryPaths |
bool | true |
Consentire ai contenuti delle librerie esterne di utilizzare percorsi di file. |
Formattazione
| Setting | Tipo | Default | Descrzione |
|---|---|---|---|
mssql.format.options.asKeywordOnOwnLine |
bool | true |
Posiziona AS su una riga separata. |
mssql.format.options.columnAliasStyle |
enum | asKeyword |
Formattare gli alias delle colonne usando AS, un segno uguale o la loro sintassi originale. I valori validi sono asKeyword, equalsSigne preserve. |
mssql.format.options.commaPlacement |
enum | trailing |
Metti le virgole alla fine degli elementi della lista (trailing) o all'inizio dell'elemento successivo (leading). |
mssql.format.options.leadingCommaSpaceCount |
Intero | 1 |
Numero di spazi dopo una virgola iniziale. I valori validi sono 0 e 1. |
mssql.format.options.persistTrailingGo |
bool | false |
Conserva i separatori di batch posteriori GO dallo script originale. |
mssql.format.options.preserveComments |
bool | true |
Mantenere i commenti durante la formattazione. |
mssql.format.options.terminateBlockStatements |
bool | false |
Aggiungi terminatori di punto e virgola dopo i blocchi BEGIN...END e TRY...CATCH. |
Indentazione
| Setting | Tipo | Default | Descrzione |
|---|---|---|---|
mssql.format.options.indentSetClause |
bool | false |
Indentare le clausole SET nelle istruzioni UPDATE. |
mssql.format.options.indentViewBody |
bool | false |
Rientra VIEW i corpi. |
Multilinea
| Setting | Tipo | Default | Descrzione |
|---|---|---|---|
mssql.format.options.multilineGroupByElementsList |
bool | false |
Formatta GROUP BY gli elementi come una lista multilinea. |
mssql.format.options.multilineHavingPredicatesList |
bool | true |
Formata HAVING i predicati separati da AND o OR su più linee. |
mssql.format.options.multilineInsertSourcesList |
bool | true |
Formatta INSERT le fonti come liste multilinea. |
mssql.format.options.multilineInsertTargetsList |
bool | true |
Formatta INSERT le colonne come liste su più righe. |
mssql.format.options.multilineInValuesList |
bool | false |
Formatta i valori in un IN predicato come elenco multilinea. |
mssql.format.options.multilineNestedFunctionCalls |
bool | false |
Formattare le chiamate di funzioni annidate su righe separate e rientrate, mantenendo le chiamate di funzione singole in un'unica riga. |
mssql.format.options.multilineOrderByElementsList |
bool | false |
Formatta ORDER BY gli elementi come una lista multilinea. |
mssql.format.options.multilinePartitionByElementsList |
bool | false |
Formattare gli elementi PARTITION BY nelle specifiche della finestra come elenco su più righe. |
mssql.format.options.multilineProcedureParametersList |
bool | false |
Formattare i parametri della procedura e della funzione su linee separate. |
mssql.format.options.multilineSelectElementsList |
bool | true |
Formatta SELECT le colonne come liste multilinea. |
mssql.format.options.multilineSetClauseItems |
bool | true |
Formatta SET gli elementi della clausola come liste multilinea. |
mssql.format.options.multilineViewColumnsList |
bool | true |
Formatta VIEW le colonne come elenchi su più righe. |
mssql.format.options.multilineWherePredicatesList |
bool | true |
Formatta WHERE i predicati come liste multilinea. |
mssql.format.options.multilineWithOptionsList |
bool | false |
Formattare i valori di clausola supportati WITH e OPTION su righe separate. |
Nuova riga
| Setting | Tipo | Default | Descrzione |
|---|---|---|---|
mssql.format.options.newLineAfterJoinKeyword |
bool | true |
Posiziona la sorgente della tabella unita su una nuova riga dopo la JOIN parola chiave. |
mssql.format.options.newLineBeforeCloseParenthesisInMultilineList |
bool | true |
Posiziona una nuova riga prima della parentesi finale di una lista multilinea. |
mssql.format.options.newLineBeforeFromClause |
bool | true |
Metti una nuova riga prima della FROM clausola. |
mssql.format.options.newLineBeforeGroupByClause |
bool | true |
Metti una nuova riga prima della GROUP BY clausola. |
mssql.format.options.newLineBeforeHavingClause |
bool | true |
Metti una nuova riga prima della HAVING clausola. |
mssql.format.options.newLineBeforeJoinClause |
bool | true |
Metti una nuova riga prima JOIN delle clausole. |
mssql.format.options.newLineBeforeOffsetClause |
bool | true |
Metti una nuova riga prima della OFFSET clausola. |
mssql.format.options.newLineBeforeOnClause |
bool | true |
Posiziona la ON clausola di un join su una nuova linea. |
mssql.format.options.newLineBeforeOpenParenthesisInMultilineList |
bool | false |
Metti una nuova riga prima della parentesi iniziale di una lista multilinea. |
mssql.format.options.newLineBeforeOrderByClause |
bool | true |
Metti una nuova riga prima della ORDER BY clausola. |
mssql.format.options.newLineBeforeOutputClause |
bool | true |
Metti una nuova riga prima della OUTPUT clausola. |
mssql.format.options.newLineBeforeWhereClause |
bool | true |
Metti una nuova riga prima della WHERE clausola. |
mssql.format.options.newLineBeforeWindowClause |
bool | true |
Metti una nuova riga prima della WINDOW clausola. |
mssql.format.options.newlineFormattedCheckConstraint |
bool | false |
Inserisci CHECK la clausola di un vincolo su una riga separata. |
mssql.format.options.newLineFormattedIndexDefinition |
bool | false |
Posizionare UNIQUE, INCLUDE, e WHERE porzioni delle definizioni di indice inline su linee separate. |
Istruzione e spaziatura dei lotti
| Setting | Tipo | Default | Descrzione |
|---|---|---|---|
mssql.format.options.numNewlinesAfterBatches |
Intero | 1 |
Numero di interruzioni di linea dopo ogni GO separatore lotto, da 0 fino a 5. |
mssql.format.options.numNewlinesAfterBatchStatement |
Intero | 2 |
Numero di interruzioni di riga dopo ogni istruzione di livello superiore in un lotto, da 0 fino a 5. |
mssql.format.options.numNewlinesAfterStatement |
Intero | 1 |
Numero di interruzioni di riga dopo ogni affermazione, da 0 fino a 5. |
Spacing
| Setting | Tipo | Default | Descrzione |
|---|---|---|---|
mssql.format.options.spaceBetweenDataTypeAndParameters |
bool | true |
Inserire uno spazio tra un tipo di dato e le sue parentesi, ad VARCHAR (255)esempio . |
mssql.format.options.spaceBetweenParametersInDataType |
bool | true |
Inserire spazi tra parametri in un tipo di dato, ad esempio DECIMAL (10, 2). |
Esempio di file delle impostazioni
{
"mssql.format.options.keywordCasing": "lowercase",
"mssql.format.options.alignClauseBodies": false,
"mssql.format.options.numNewlinesAfterStatement": 2,
"[sql]": {
"editor.formatOnSave": true
}
}
Imposta il formatatore predefinito
Per impostare l'estensione MSSQL come predefinita, seleziona Configura Formatter Predefinito...>SQL Server (mssql), oppure aggiungere la seguente configurazione asettings.json:
{
"[sql]": {
"editor.defaultFormatter": "ms-mssql.mssql"
}
}