Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Pemformatan yang konsisten membuat Transact-SQL (T-SQL) lebih mudah dibaca, ditinjau, dan dikelola, terutama ketika beberapa orang berkontribusi pada basis kode yang sama. Ekstensi MSSQL untuk Visual Studio Code mencakup SQL formatter bawaan yang dapat Anda jalankan sesuai permintaan, konfigurasikan untuk format otomatis saat menyimpan, dan menyesuaikan melalui pengaturan Visual Studio Code.
Fungsi pemformatan T-SQL dalam ekstensi MSSQL dibangun di atas ScriptDOM, sebuah pustaka .NET open-source yang mengurai T-SQL dan menghasilkan skrip berdasarkan pohon sintaks abstrak.
Format sesuai permintaan
Anda dapat memformat T-SQL di jendela editor mana pun. Formatter bekerja pada seluruh dokumen atau hanya pada teks yang Anda pilih.
Untuk memformat T-SQL sesuai permintaan, gunakan salah satu metode berikut:
Menu konteks: Klik kanan di jendela editor T-SQL dan pilih Format Dokumen atau Format Pilihan.
Palet Perintah: Jalankan Format Dokumen atau Format Pilihan.
Pintasan keyboard: Untuk Format Dokumen, tekan Shift+Alt+F di Windows dan Linux, atau Shift+Option+F di macOS. Untuk Pemilihan Format, tekan Ctrl+K, Ctrl+F di Windows dan Linux, atau Cmd+K, Cmd+F di macOS.
Format saat menyimpan
Di Visual Studio Code, pengaturan editor standar mengontrol format saat menyimpan, bukan pengaturan MSSQL formatter khusus.
Gunakan pengaturan berikut di file Visual Studio Code settings.json Anda untuk memformat T-SQL secara otomatis setiap kali Anda menyimpan file:
{
"[sql]": {
"editor.formatOnSave": true
}
}
Mengonfigurasi opsi pemformatan
Konfigurasikan pemformatan di UI Pengaturan Visual Studio Code atau di pengaturan pengguna atau ruang kerja settings.json.
Di editor Pengaturan, cariFormatMssql> untuk melihat opsi yang tersedia. Di settings.json, gunakan pengaturan mssql.format.* yang sesuai.
Pengaturan yang didukung
Pengaturan berikut mengonfigurasi pemformat SQL.
Umum
| Setting | Tipe | Default | Deskripsi |
|---|---|---|---|
mssql.format.showParseErrorNotification |
bool | true |
Tampilkan notifikasi ketika formatter tidak dapat sepenuhnya mengurai T-SQL. |
mssql.format.options.sqlVersion |
enum | sql170 |
Versi T-SQL digunakan untuk memparse dan menghasilkan skrip yang diformat. |
mssql.format.options.sqlEngineType |
enum | all |
Tipe Database Engine yang digunakan untuk mengurai dan menghasilkan skrip yang diformat. Nilai yang valid adalah all, standalone, dan sqlAzure. |
Penyelarasan
| Setting | Tipe | Default | Deskripsi |
|---|---|---|---|
mssql.format.options.alignClauseBodies |
bool | true |
Sejajarkan isi FROM, WHERE, GROUP BY, dan klausa serupa. |
mssql.format.options.alignColumnDefinitionFields |
bool | true |
Menyelaraskan bidang definisi kolom, seperti nama, tipe data, dan batasan. |
mssql.format.options.alignSetClauseItem |
bool | true |
Sejajarkan item klausul SET pada pernyataan UPDATE. |
mssql.format.options.clauseBodyAlignment |
enum | aligned |
Pertahankan isi klausa aligned bersama kata kuncinya atau letakkan di baris berikutnya seperti indented. |
Casing dan pengenal
| Setting | Tipe | Default | Deskripsi |
|---|---|---|---|
mssql.format.options.builtInFunctionCasing |
enum | preserve |
Gaya casing untuk nama fungsi bawaan yang didukung, seperti dan GETDATECOALESCE. Nilai yang valid adalah: preserve, uppercase, lowercase, dan pascalCase. |
mssql.format.options.identifierBracketing |
enum | preserve |
Simpan, tambahkan, atau hapus tanda kurung siku opsional di sekitar pengenal. Nilai yang valid adalah preserve, includeBrackets, dan excludeBrackets. Tanda kurung yang diperlukan dipertahankan. |
mssql.format.options.identifierCasing |
enum | preserve |
Gaya casing untuk pengenal objek. Nilai yang valid adalah: preserve, uppercase, lowercase, dan pascalCase. |
mssql.format.options.keywordCasing |
enum | uppercase |
Gaya kapitalisasi kata kunci. Nilai yang valid adalah uppercase, lowercase, dan pascalCase. |
Paths
| Setting | Tipe | Default | Deskripsi |
|---|---|---|---|
mssql.format.options.allowExternalLanguagePaths |
bool | true |
Izinkan konten bahasa eksternal menggunakan jalur file. |
mssql.format.options.allowExternalLibraryPaths |
bool | true |
Izinkan konten perpustakaan eksternal menggunakan jalur file. |
Formatting
| Setting | Tipe | Default | Deskripsi |
|---|---|---|---|
mssql.format.options.asKeywordOnOwnLine |
bool | true |
Tempatkan AS pada baris tersendiri. |
mssql.format.options.columnAliasStyle |
enum | asKeyword |
Format alias kolom menggunakan AS, tanda sama dengan, atau sintaks aslinya. Nilai yang valid adalah asKeyword, equalsSign, dan preserve. |
mssql.format.options.commaPlacement |
enum | trailing |
Tempatkan koma di akhir item daftar (trailing) atau di awal item berikutnya (leading). |
mssql.format.options.leadingCommaSpaceCount |
integer | 1 |
Jumlah spasi setelah koma awal. Nilai yang berlaku adalah 0 atau 1. |
mssql.format.options.persistTrailingGo |
bool | false |
Pertahankan pemisah batch di akhir GO dari skrip asli. |
mssql.format.options.preserveComments |
bool | true |
Pertahankan komentar selama pemformatan. |
mssql.format.options.terminateBlockStatements |
bool | false |
Tambahkan terminator titik koma setelah blok BEGIN...END dan TRY...CATCH. |
Indentasi
| Setting | Tipe | Default | Deskripsi |
|---|---|---|---|
mssql.format.options.indentSetClause |
bool | false |
Indentasikan klausa SET dalam pernyataan UPDATE. |
mssql.format.options.indentViewBody |
bool | false |
Beri inden pada isi VIEW. |
Multibaris
| Setting | Tipe | Default | Deskripsi |
|---|---|---|---|
mssql.format.options.multilineGroupByElementsList |
bool | false |
Format GROUP BY elemen sebagai daftar multibaris. |
mssql.format.options.multilineHavingPredicatesList |
bool | true |
Predikat format HAVING yang dipisahkan oleh atau ANDOR pada beberapa baris. |
mssql.format.options.multilineInsertSourcesList |
bool | true |
Format INSERT sumber sebagai daftar multibaris. |
mssql.format.options.multilineInsertTargetsList |
bool | true |
Format INSERT kolom sebagai daftar multibaris. |
mssql.format.options.multilineInValuesList |
bool | false |
Format nilai dalam predikat IN sebagai daftar multibaris. |
mssql.format.options.multilineNestedFunctionCalls |
bool | false |
Format panggilan fungsi bersarang pada baris berindentasi terpisah sambil mempertahankan panggilan fungsi terisolasi pada satu baris. |
mssql.format.options.multilineOrderByElementsList |
bool | false |
Format ORDER BY elemen sebagai daftar multibaris. |
mssql.format.options.multilinePartitionByElementsList |
bool | false |
Format PARTITION BY elemen dalam spesifikasi jendela sebagai daftar multibaris. |
mssql.format.options.multilineProcedureParametersList |
bool | false |
Format parameter prosedur dan fungsi pada baris terpisah. |
mssql.format.options.multilineSelectElementsList |
bool | true |
Format SELECT kolom sebagai daftar multibaris. |
mssql.format.options.multilineSetClauseItems |
bool | true |
Format SET item klausa sebagai daftar multibaris. |
mssql.format.options.multilineViewColumnsList |
bool | true |
Format VIEW kolom sebagai daftar multibaris. |
mssql.format.options.multilineWherePredicatesList |
bool | true |
Format WHERE predikat sebagai daftar multibaris. |
mssql.format.options.multilineWithOptionsList |
bool | false |
Format nilai klausa yang didukung oleh WITH dan OPTION pada baris terpisah. |
Baris baru
| Setting | Tipe | Default | Deskripsi |
|---|---|---|---|
mssql.format.options.newLineAfterJoinKeyword |
bool | true |
Tempatkan sumber tabel gabungan pada baris baru setelah JOIN kata kunci. |
mssql.format.options.newLineBeforeCloseParenthesisInMultilineList |
bool | true |
Tempatkan baris baru di depan tanda kurung penutup dari daftar multibaris. |
mssql.format.options.newLineBeforeFromClause |
bool | true |
Letakkan baris baru sebelum FROM klausul. |
mssql.format.options.newLineBeforeGroupByClause |
bool | true |
Letakkan baris baru sebelum GROUP BY klausul. |
mssql.format.options.newLineBeforeHavingClause |
bool | true |
Letakkan baris baru sebelum HAVING klausul. |
mssql.format.options.newLineBeforeJoinClause |
bool | true |
Tempatkan baris baru sebelum JOIN klausa. |
mssql.format.options.newLineBeforeOffsetClause |
bool | true |
Letakkan baris baru sebelum OFFSET klausul. |
mssql.format.options.newLineBeforeOnClause |
bool | true |
Letakkan klausa ON dari join pada baris baru. |
mssql.format.options.newLineBeforeOpenParenthesisInMultilineList |
bool | false |
Tempatkan baris baru di depan tanda kurung pembuka dari daftar multibaris. |
mssql.format.options.newLineBeforeOrderByClause |
bool | true |
Letakkan baris baru sebelum ORDER BY klausul. |
mssql.format.options.newLineBeforeOutputClause |
bool | true |
Letakkan baris baru sebelum OUTPUT klausul. |
mssql.format.options.newLineBeforeWhereClause |
bool | true |
Letakkan baris baru sebelum WHERE klausul. |
mssql.format.options.newLineBeforeWindowClause |
bool | true |
Letakkan baris baru sebelum WINDOW klausul. |
mssql.format.options.newlineFormattedCheckConstraint |
bool | false |
Letakkan klausul CHECK dari sebuah batasan pada baris terpisah. |
mssql.format.options.newLineFormattedIndexDefinition |
bool | false |
Tempatkan UNIQUE, INCLUDE, dan WHERE bagian definisi indeks inline pada baris terpisah. |
Pernyataan dan jarak batch
| Setting | Tipe | Default | Deskripsi |
|---|---|---|---|
mssql.format.options.numNewlinesAfterBatches |
integer | 1 |
Jumlah jeda baris setelah setiap pemisah batch GO, dari 0 hingga 5. |
mssql.format.options.numNewlinesAfterBatchStatement |
integer | 2 |
Jumlah pemisah baris setelah setiap pernyataan tingkat atas dalam satu batch, dari 0 hingga 5. |
mssql.format.options.numNewlinesAfterStatement |
integer | 1 |
Jumlah jeda baris setelah setiap pernyataan, dari 0 hingga 5. |
Spacing
| Setting | Tipe | Default | Deskripsi |
|---|---|---|---|
mssql.format.options.spaceBetweenDataTypeAndParameters |
bool | true |
Masukkan spasi antara tipe data dan tanda kurungnya, misalnya VARCHAR (255). |
mssql.format.options.spaceBetweenParametersInDataType |
bool | true |
Sisipkan spasi antar parameter dalam tipe data, misalnya DECIMAL (10, 2). |
Contoh file pengaturan
{
"mssql.format.options.keywordCasing": "lowercase",
"mssql.format.options.alignClauseBodies": false,
"mssql.format.options.numNewlinesAfterStatement": 2,
"[sql]": {
"editor.formatOnSave": true
}
}
Atur pemformat bawaan
Untuk mengatur ekstensi MSSQL sebagai default, pilih Konfigurasikan Formatter Default...>SQL Server (mssql), atau tambahkan konfigurasi berikut ke settings.json:
{
"[sql]": {
"editor.defaultFormatter": "ms-mssql.mssql"
}
}