SQL Server Management Studio 자동 완성 억제


21

쿼리를 입력하는 동안 SQL Server Management Studio의 자동 완성을 일시적으로 억제하는 방법이 있습니까? 자동 완성 기능을 완전히 비활성화하지 않으려면 특정 단어를 입력하는 동안 일부 키를 누르고 있으면 방해가되지 않습니다.

예를 들어 다음과 같은 쿼리가 있다고 가정합니다.

SELECT Foo, Foo2 FROM SomeTable

입력 Foo한 다음 스페이스 바를 누르면 SQL Server Management Studio의 자동 완성 기능이 시작되고 완료 Foo됩니다 FooBar.


6
SQL Server 2012 Management Studio의 IntelliSense가 훨씬 덜 공격적이라는 것을 알 수 있습니다. 나는 2008 년에 참을 수 없어-ID라는 열이 있으면 IDENT_CURRENT로 변경됩니다. 구토.
Aaron Bertrand

1
@AaronBertrand-치는 공간이나 쉼표가 여전히 자동으로 완료됩니까? 다른 환경에서 탭을 작성하는 데 익숙해 졌을 때 매우 성가신 것으로 나타 났으며 95 %의 시간이 자동으로 완료되어 끝을 삭제해야합니다.
Martin Smith

공백과 쉼표에 대해 @MartinSmith를 사용하면 아래쪽 화살표를 사용하여 명백한 선택을 강조 표시 한 다음 (한 번의 키 입력) 스페이스 나 쉼표를 누르지 않는 한 원래대로 해석됩니다. Tab은 SSMS가 원하는 옵션을 선택합니다. "최선의 선택"알고리즘은 2008/2008 R2보다 1000 배 더 좋습니다. 나에게 가장 좋은 부분은 부분 일치입니다. 입력 sys.depend및 자동 완성 목록은 모든 DMV에 / 카탈로그 뷰에 여과 포함 depend .
Aaron Bertrand

1
@MartinSmith 이것은 OP에 도움이되지 않지만 SSMS 2014에서 해결책을 찾았습니다. 아래에 게시되었습니다.
Doug_Ivison

1
@Doug_Ivison 저는이 질문을 꽤 오래 전에 게시했습니다. 이제 SSMS 2016을 사용하고 있습니다.이 점에서 지금은 더 낫다고 생각합니다.
Jack

답변:


26

히트는 ESC창을 닫습니다 완료를 입력하면 공격하지만, 경우 공간을 타격하기 전에 단어, ESC'fo를'후 다음 '을 O'가 다시 시작된다 입력합니다.

자주 사용하지 않는 또 다른 옵션은 사용하지 않을 때 ( Tools->Options->Text Editor->Transact-SQL->General->Auto list members) 비활성화하고 CTRL+ J를 사용 하여 수동으로 가져 오는 것입니다. Red Gate 에는 더 많은 제어 기능을 제공 할 수있는 SQL Prompt 라는 제품도 있습니다 .

또한 일시적으로 비활성화 / 활성화하려는 경우 쿼리 메뉴 및 쿼리 도구 모음에 "인텔리전스 활성화"옵션이 있습니다.


1
(이것은 VS와 같은 다른 MS 도구에서도 작동합니다.)
pst

고맙지 만, 여전히 공백을 포함하는 이름 ( [Foo Bar]예 :)을 다시 언급하기 때문에 여전히 성가시다 ESC. 누군가 다른 솔루션을 알고 있는지 확인하기 전에 질문을 조금 더 열어 두겠습니다.

from 테이블을 지정하지 않은 경우 select 절에서 자동 완성을 활성화해야한다고 생각하지 않습니다.

1
Ctrl+space(보다 일반적인 단축키)는 자동 완성 기능을 제공합니다.
Marc

4

잘못된 자동 선택이 나타난 후 실행 취소 (ctrl-Z)하면 원래 항목이 복원됩니다.


2

이것은 SSMS 2008에 도움이되지 않지만 (다른 사람들 이이 페이지를 찾은 경우) SSMS 2014에서 해결책을 찾았습니다.

편집 풀다운 메뉴의 하단에서 Intellisense를 선택한 다음 "전체 단어"를 토글하십시오.

공백이 입력되면 암시 적 단어 완성 기능이 해제 된 것처럼 보이지만 화살표 이름을 사용하여 선택할 수있는 드롭 다운이 계속 표시됩니다.이 화살표는 return / tab / space를 사용하여 선택할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.