Elimina il completamento automatico di SQL Server Management Studio


21

Esiste un modo per eliminare temporaneamente il completamento automatico di SQL Server Management Studio durante la digitazione di una query? Non voglio disabilitare il completamento automatico del tutto, basta dire di tenere premuto un tasto mentre si digita una determinata parola in modo che non si frapponga.

Ad esempio dire che ho avuto la seguente query

SELECT Foo, Foo2 FROM SomeTable

Mentre sto scrivendo Fooe poi ha colpito barra spaziatrice calci di completamento automatico di SQL Server Management Studio e completa in Fooa FooBar.


6
Scoprirai che IntelliSense in SQL Server 2012 Management Studio è molto meno aggressivo. Non lo sopporto nel 2008: se esiste una colonna denominata ID, questa viene modificata in IDENT_CURRENT. Vomito.
Aaron Bertrand

1
@AaronBertrand - Colpire lo spazio o la virgola si completa automaticamente? Lo trovo molto fastidioso dato che sono abituato a dover fare la linguetta in altri ambienti e il 95% delle volte si completa automaticamente in qualcosa di cui ho quindi bisogno di eliminare la fine.
Martin Smith,

@MartinSmith per spazio e virgola, vengono interpretati come dovrebbero essere, a meno che non si usi la freccia giù per evidenziare la selezione ovvia (questo è un tasto), quindi premere spazio o virgola. La scheda seleziona l'opzione che SSMS ritiene intendi. E l'algoritmo per "la scelta migliore" è 1000X migliore di 2008/2008 R2. La parte migliore per me è la corrispondenza parziale. digitare sys.depende l'elenco di completamento automatico viene filtrato su tutte le visualizzazioni DMV / catalogo che contengono depend .
Aaron Bertrand

1
@MartinSmith Questo non aiuterà OP, ma penso di aver trovato una soluzione in SSMS 2014 ... pubblicata di seguito.
Doug_Ivison,

1
@Doug_Ivison Ho pubblicato questa domanda un po 'di tempo fa, ora sto usando SSMS 2016. Penso che sia meglio a questo proposito ora ..
Jack

Risposte:


26

Premi ESCper chiudere la finestra dopo aver digitato la parola prima di colpire lo spazio, ma se premi ESCdopo 'fo' e quindi digita 'o', si avvierà di nuovo.

Un'altra opzione se non la usi spesso sarebbe disabilitarla ( Tools->Options->Text Editor->Transact-SQL->General->Auto list members) e usare CTRL+ Jper visualizzarla manualmente quando vuoi usarla. Red Gate ha anche un prodotto chiamato SQL Prompt che potrebbe offrire un maggiore controllo.

Inoltre c'è un'opzione "Intellisense Enabled" nel menu Query e sulla barra degli strumenti Query se si desidera disabilitarla / abilitarla temporaneamente.


1
(Questo funziona anche in altri strumenti MS come VS.)
PST

Grazie, ma è comunque super fastidioso per i nomi che contengono spazi ( [Foo Bar]ad esempio) poiché, come hai già detto, si inserisce di nuovo in modo da dover continuare a colpire ESC. Lascerò la domanda aperta un po 'più a lungo prima di accettare di vedere se qualcuno conosce una soluzione diversa.

Sono d'accordo, non credo che il completamento automatico dovrebbe essere abilitato in una clausola select a meno che tu non abbia già il tuo dalle tabelle specificate.

1
Ctrl+space(il tasto di scelta rapida più comune) funziona anche per visualizzare il completamento automatico.
Marc

4

Se si annulla (ctrl-Z) dopo la selezione automatica errata, la voce originale verrà ripristinata.


2

Questo non aiuterà con SSMS 2008, ma (nel caso in cui altri abbiano trovato questa pagina, come ho fatto io), penso di aver trovato una soluzione in SSMS 2014:

Nel menu a discesa Modifica, in basso, seleziona Intellisense, quindi attiva "Completa Word".

Questo sembra disattivare il completamento implicito delle parole quando viene digitato uno spazio, ma sto ancora ricevendo gli elenchi a discesa offerti per il completamento per i nomi delle colonne, che possono essere selezionati usando le frecce quindi return / tab / space.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.