Menekan SQL Server Management Studio otomatis selesai

21

Apakah ada cara untuk sementara menekan SQL Server Management Studio melengkapi sementara mengetik kueri? Saya tidak ingin menonaktifkan lengkapi-otomatis sepenuhnya hanya dengan mengatakan tahan beberapa tombol saat mengetik kata tertentu sehingga tidak menghalangi.

Misalnya katakan saya punya pertanyaan berikut

SELECT Foo, Foo2 FROM SomeTable

Ketika saya mengetik Foodan kemudian tekan spasi-bar SQL-otomatis Management Server Studio tendangan dan menyelesaikan Foountuk FooBar.

Mendongkrak
sumber
6
Anda akan menemukan bahwa IntelliSense di SQL Server 2012 Management Studio jauh kurang agresif. Saya tidak tahan pada 2008 - jika ada kolom bernama ID, itu akan diubah menjadi IDENT_CURRENT. Muntah.
Aaron Bertrand
1
@ AaronBertrand - Apakah memukul spasi atau koma masih otomatis selesai? Saya menemukan itu sangat menjengkelkan karena saya terbiasa harus tab untuk itu di lingkungan lain dan 95% dari waktu itu otomatis menyelesaikan sesuatu yang kemudian saya perlu menghapus akhir.
Martin Smith
@MartinSmith untuk spasi dan koma, mereka ditafsirkan sebagaimana mestinya, kecuali jika Anda menggunakan panah bawah untuk menyorot pilihan yang jelas (ini adalah satu keystroke), lalu tekan spasi atau koma. Tab memilih opsi yang menurut SSMS maksud Anda. Dan algoritma untuk "pilihan terbaik" adalah 1000X lebih baik dari 2008/2008 R2. Bagian terbaik bagi saya adalah pertandingan parsial. jenis sys.dependdan daftar lengkapi-otomatis difilter ke semua DMV / tampilan katalog yang berisi depend .
Aaron Bertrand
1
@ MartinSmith Ini tidak akan membantu OP, tapi saya rasa saya menemukan solusi di SSMS 2014 ... diposting di bawah ini.
Doug_Ivison
1
@Doug_Ivison Saya telah memposting pertanyaan ini beberapa waktu yang lalu, saya sekarang menggunakan SSMS 2016. Saya pikir lebih baik dalam hal ini sekarang ..
Jack

Jawaban:

26

Tekan ESCuntuk menutup jendela setelah selesai mengetik kata sebelum memukul spasi, tetapi jika Anda menekan ESCsetelah 'untuk' dan kemudian ketik 'o' itu akan menendang lagi.

Opsi lain jika Anda tidak sering menggunakannya adalah menonaktifkannya ( Tools->Options->Text Editor->Transact-SQL->General->Auto list members) dan menggunakan CTRL+ Juntuk memunculkannya secara manual saat Anda ingin menggunakannya. Red Gate juga memiliki produk yang disebut SQL Prompt yang mungkin menawarkan lebih banyak kontrol.

Selain itu ada opsi "Intellisense Diaktifkan" di bawah menu Kueri dan pada bilah alat Kueri jika Anda ingin menonaktifkan / mengaktifkannya untuk sementara waktu.

Jason Goemaat
sumber
1
(Ini juga berfungsi di alat MS lainnya seperti VS.)
pst
Terima kasih, tapi itu masih sangat menjengkelkan untuk nama yang mengandung spasi ( [Foo Bar]misalnya) karena seperti yang Anda sebutkan menendang lagi sehingga Anda akhirnya harus terus memukul ESC. Saya akan membiarkan pertanyaan terbuka sedikit lebih lama sebelum menerima untuk melihat apakah ada yang tahu solusi yang berbeda.
Saya setuju, saya tidak berpikir autocomplete harus diaktifkan dalam klausa pilih kecuali Anda sudah memiliki tabel dari yang ditentukan.
1
Ctrl+space(hotkey yang lebih umum) juga berfungsi untuk menampilkan pelengkapan otomatis.
Marc
4

Jika Anda membatalkan (ctrl-Z) setelah pilihan otomatis yang salah muncul, entri asli Anda akan dikembalikan.

BKeith
sumber
2

Ini tidak akan membantu dengan SSMS 2008, tetapi (jika orang lain menemukan halaman ini, seperti yang saya lakukan), saya pikir saya menemukan solusi di SSMS 2014:

Di bawah menu tarik-turun Edit, di bagian bawah, pilih Intellisense, dan kemudian beralih "Kata Lengkap".

Ini tampaknya mematikan penyelesaian kata implisit ketika spasi diketik, tapi saya masih mendapatkan drop-down yang ditawarkan untuk penyelesaian nama kolom, yang dapat dipilih menggunakan panah kemudian kembali / tab / spasi.

Doug_Ivison
sumber