หยุดการทำงานของ Studio จัดการเซิร์ฟเวอร์ SQL โดยอัตโนมัติ


21

มีวิธีที่จะระงับการทำให้สมบูรณ์อัตโนมัติของ SQL Server Management Studio ชั่วคราวในขณะที่พิมพ์แบบสอบถามหรือไม่? ฉันไม่ต้องการปิดใช้งานการเติมข้อความอัตโนมัติให้สมบูรณ์เพียงแค่พูดว่ากดปุ่มค้างไว้ในขณะที่พิมพ์ด้วยคำใดคำหนึ่งเพื่อไม่ให้เข้าทาง

ตัวอย่างเช่นฉันมีคำถามต่อไปนี้

SELECT Foo, Foo2 FROM SomeTable

ขณะที่ผมพิมพ์Fooแล้วกดพื้นที่บาร์สตูดิโอ SQL Server บริหารเตะอัตโนมัติสมบูรณ์และเสร็จสิ้นไปFooFooBar


6
คุณจะพบว่า IntelliSense ในสตูดิโอการจัดการ SQL Server 2012 มีความก้าวร้าวน้อยกว่ามาก ฉันไม่สามารถยืนได้ในปี 2008 - ถ้ามีคอลัมน์ชื่อ ID มันจะเปลี่ยนเป็น IDENT_CURRENT อ้วก.
Aaron Bertrand

1
@AaronBertrand - กดปุ่มเว้นวรรคหรือเครื่องหมายจุลภาคยังคงทำงานโดยอัตโนมัติหรือไม่ ฉันพบว่าน่ารำคาญมากเพราะฉันเคยต้องใช้แท็บสำหรับสิ่งนั้นในสภาพแวดล้อมอื่น ๆ และ 95% ของเวลาที่มันทำสิ่งที่ฉันต้องทำให้เสร็จโดยอัตโนมัติ
Martin Smith

@MartinSmith สำหรับช่องว่างและเครื่องหมายจุลภาคพวกเขาถูกตีความตามที่ควรจะเป็นเว้นแต่คุณจะใช้ลูกศรชี้ลงเพื่อเน้นการเลือกที่ชัดเจน (นี่คือการกดแป้นเดียว) จากนั้นกด Space หรือเครื่องหมายจุลภาค แท็บเลือกตัวเลือก SSMS ที่คุณคิดว่าคุณต้องการ และอัลกอริทึมสำหรับ "ตัวเลือกที่ดีที่สุด" คือ 1000X ดีกว่า 2008/2008 R2 ส่วนที่ดีที่สุดสำหรับฉันคือการจับคู่บางส่วน พิมพ์sys.dependและรายการอัตโนมัติสมบูรณ์จะถูกกรองไป DMVs ทั้งหมด views / แคตตาล็อกที่ประกอบด้วย depend
Aaron Bertrand

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 Promptซึ่งอาจมีการควบคุมที่มากขึ้น

นอกจากนี้ยังมีตัวเลือก "เปิดใช้งาน Intellisense" ภายใต้เมนูแบบสอบถามและบนแถบเครื่องมือแบบสอบถามหากคุณต้องการปิด / เปิดใช้งานชั่วคราว


1
(สิ่งนี้สามารถทำงานในเครื่องมือ MS อื่น ๆ เช่น VS ได้ด้วย)
pst

ขอบคุณ แต่มันยังคงน่ารำคาญอย่างยิ่งสำหรับชื่อที่มีช่องว่าง ( [Foo Bar]ตัวอย่าง) เนื่องจากที่คุณกล่าวถึงมันจะเปิดขึ้นอีกครั้งดังนั้นคุณจึงจำเป็นต้องกดปุ่มESCต่อไป ฉันจะปล่อยให้คำถามเปิดอีกสักครู่ก่อนที่จะยอมรับเพื่อดูว่าใครรู้วิธีแก้ปัญหาที่แตกต่างกัน

ฉันเห็นด้วยฉันไม่คิดว่าการเติมข้อความอัตโนมัติควรเปิดใช้งานในส่วนคำสั่งที่เลือกเว้นแต่คุณจะได้รับจากตารางที่ระบุ

1
Ctrl+space(ปุ่มลัดที่ใช้บ่อย) ยังทำงานเพื่อให้การเติมข้อมูลอัตโนมัติสมบูรณ์
Marc

4

หากคุณเลิกทำ (ctrl-Z) หลังจากการเลือกอัตโนมัติผิดปรากฏขึ้นรายการต้นฉบับของคุณจะถูกกู้คืน


2

สิ่งนี้จะไม่ช่วย SSMS 2008 แต่ (ในกรณีที่คนอื่นพบหน้านี้เหมือนที่ฉันทำ) ฉันคิดว่าฉันพบวิธีแก้ปัญหาใน SSMS 2014:

ใต้เมนูแบบเลื่อนลงแก้ไขที่ด้านล่างเลือก Intellisense แล้วสลับ "Complete Word"

สิ่งนี้ดูเหมือนว่าจะปิดการเติมคำให้สมบูรณ์โดยปริยายเมื่อมีการพิมพ์ช่องว่าง แต่ฉันยังคงได้รับการเสนอแบบดรอปดาวน์เพื่อทำให้ชื่อคอลัมน์เสร็จสมบูรณ์ซึ่งสามารถเลือกได้โดยใช้ลูกศรจากนั้นส่งคืน / แท็บ / ช่องว่าง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.