sql server #region


163

dapatkah saya membuat wilayah dalam editor server sql (suka #regiondan #endregiondalam C #)?

Jawaban:


272

Tidak juga, maaf! Tapi...

Menambahkan begindan end.. dengan komentar di begindaerah membuat yang akan terlihat seperti ini ... sedikit retas!

tangkapan layar kode wilayah ujung mulai

Kalau tidak, Anda hanya dapat memperluas dan menciutkan Anda tidak bisa mendikte apa yang harus diperluas dan diciutkan. Bukan tanpa alat pihak ketiga seperti SSMS Tools Pack .


4
Pastikan Anda memiliki Pernyataan Garis Besar diaktifkan di bawah Editor Teks> Transact-SQL> Intellisense> Enable Intellisense
GatesReign

2
technet.microsoft.com/en-us/library/aa225998(v=sql.80).aspx . Meskipun semua pernyataan Transact-SQL valid dalam blok BEGIN ... END, pernyataan Transact-SQL tertentu tidak boleh dikelompokkan bersama dalam batch yang sama (blok pernyataan). Adakah yang bisa memberi tahu saya mengapa mereka tidak boleh dikelompokkan?
Jacob Phan

1
Retas yang berguna, tetapi jangan lupa untuk menambahkan gosetelah endpernyataan jika Anda ingin membuat beberapa wilayah / bagian.
marchWest

cemerlang! Terima kasih
rintisan

Baik! Jika Anda hanya memiliki blok komentar. Anda harus menambahkan sesuatu tanpa komentar di dalamnya. misalnya: print
pada

12

(Saya pengembang add-in SSMSBoost untuk SSMS)

Kami baru-baru ini menambahkan dukungan untuk sintaks ini ke add-in SSMSBoost kami.

--#region [Optional Name]
--#endregion

Ini juga memiliki opsi untuk secara otomatis "mengenali" daerah saat membuka skrip.


2
Tidak apa-apa tapi tidak bekerja dengan cepat. Saya harus menutup dan membuka kembali file untuk menutup wilayah yang baru dibuat.
Martin Capodici

4
Ada opsi "reparse region", tersedia di menu SSMSBoost pada bilah alat. Jadi, tidak perlu membuka kembali file tersebut.
Andrei Rantsevich

Sayangnya ini memiliki bug. Jika pernyataan kode pertama dalam wilayah tersebut dikomentari, wilayah tersebut berakhir pada komentar terakhir di luar garis kode
Jeff

9

BEGIN ... END berfungsi, Anda hanya perlu menambahkan bagian yang dikomentari. Cara termudah untuk melakukan ini adalah menambahkan nama bagian! Rute lain adalah menambahkan blok komentar. Lihat di bawah:

BEGIN  -- Section Name
/* 
Comment block some stuff  --end comment should be on next line
*/

 --Very long query
SELECT * FROM FOO
SELECT * FROM BAR
END


4

Ini hanya masalah menggunakan lekukan teks di editor kueri.

Tampilan yang Diperluas:

Diperluas

Tampilan Runtuh:

Runtuh


3

Tidak, #region tidak ada dalam bahasa T-SQL.

Anda bisa mendapatkan kode-lipat menggunakan blok awal-akhir:

- daerah saya
mulai
    - kode di sini
akhir

Saya tidak yakin saya akan merekomendasikan untuk menggunakannya kecuali jika kode tidak dapat diterima kembali dengan cara lain!


2

Saya telah menggunakan teknik yang mirip dengan McVitie, dan hanya dalam prosedur tersimpan atau skrip yang cukup panjang. Saya akan memecah bagian fungsional tertentu seperti ini:

BEGIN /** delete queries **/

DELETE FROM blah_blah

END /** delete queries **/

BEGIN /** update queries **/

UPDATE sometable SET something = 1

END /** update queries **/

Metode ini terlihat cukup bagus di studio manajemen dan sangat membantu dalam meninjau kode. Bagian yang runtuh terlihat seperti:

BEGIN /** delete queries **/ ... /** delete queries **/

Saya sebenarnya lebih suka dengan cara ini karena saya tahu bahwa saya BEGINcocok dengan ENDcara ini.


1

Pilihan lainnya adalah

jika tujuan Anda adalah menganalisis kueri Anda, Notepad + memiliki pembungkus otomatis yang berguna untuk Sql.


Ini sangat membantu saya. Terima kasih
Theotonio
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.