SQL Server Management Studioのオートコンプリートを抑制する


21

クエリの入力中にSQL Server Management Studioのオートコンプリートを一時的に抑制する方法はありますか?オートコンプリートを完全に無効にしたくないのは、特定の単語を入力するときにキーを押したままにして、邪魔にならないようにするだけです。

たとえば、次のクエリがあったとします

SELECT Foo, Foo2 FROM SomeTable

入力してFooからスペースバーを押すと、SQL Server Management Studioのオートコンプリートが開始され、完了FooFooBarます。


6
SQL Server 2012 Management StudioのIntelliSenseは、それほど攻撃的ではないことがわかります。2008年には我慢できません。IDという名前の列がある場合、IDENT_CURRENTに変更されます。プケ。
アーロンバートランド

1
@AaronBertrand-ヒットスペースまたはコンマはまだ自動補完されますか?私は他の環境でそれをタブで移動する必要があり、95%の時間が自動終了して何かを削除する必要があることに慣れているため、非常に迷惑です。
マーティンスミス

スペースとコンマの@MartinSmithは、下矢印を使用して明白な選択を強調表示し(これは1つのキーストロークです)、スペースまたはコンマを打たない限り、本来あるべきものとして解釈されます。タブは、SSMSがあなたが意図したと考えるオプションを選択します。また、「最良の選択」のアルゴリズムは、2008/2008 R2よりも1000倍優れています。私にとって最高の部分は部分一致です。を入力するsys.dependと、オートコンプリートリストはを含む すべてのDMV /カタログビューにフィルターされますdepend
アーロンバートランド

1
@MartinSmithこれはOPには役立ちませんが、SSMS 2014で解決策を見つけたと思います...以下に投稿します。
Doug_Ivison

1
私はこの質問を掲載しました@Doug_Ivison前に、私は今、SSMS 2016を使用していながら、非常に私はそれが今より良く、この点で..だと思う
ジャック・

回答:


26

ESCスペースを押す前に単語を入力し終わったらウィンドウを閉じるためにヒットしますがESC、「fo」の後にヒットしてから「o」を入力すると、再び起動します。

頻繁に使用しない場合の別のオプションは、それを無効にし(Tools->Options->Text Editor->Transact-SQL->General->Auto list members)、使用するときにCTRL+ Jを使用して手動で起動することです。Red Gateには、SQLプロンプトと呼ばれる製品もあり、より詳細な制御が可能です。

さらに、一時的に無効化/有効化する場合は、[クエリ]メニューと[クエリ]ツールバーに[Intellisenseを有効化]オプションがあります。


1
(これはVSなどの他のMSツールでも機能します。)
pst

ありがとうございますが、スペースを含む名前([Foo Bar]たとえば)については非常に迷惑です。あなたが言及したように、それが再び作動するため、ヒットし続ける必要がありますESC。誰かが別の解決策を知っているかどうかを確認する前に、質問をもう少し開いたままにします。

同意します。すでにfromテーブルを指定していない限り、select句でオートコンプリートを有効にする必要はないと思います。

1
Ctrl+space(より一般的なホットキー)は、オートコンプリートを表示するためにも機能します。
マーク

4

間違った自動選択が表示された後に元に戻す(ctrl-Z)と、元のエントリが復元されます。


2

これはSSMS 2008には役立ちませんが(他の人が私と同じようにこのページを見つけた場合)、SSMS 2014で解決策を見つけたと思います。

[編集]プルダウンメニューの下部にある[Intellisense]を選択し、[完全な単語]を切り替えます。

これは、スペースが入力されたときに暗黙的な単語補完をオフにするようですが、列名の補完用にドロップダウンがまだ表示されています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.