การผสมแป้นพิมพ์ที่คุณตามหลัง ( Ctrl+ K, Ctrl+ D) มีไว้สำหรับ "การจัดรูปแบบ" - แต่ไม่เท่าที่คุณคาดหวัง มันไม่ใช่ prettifier ใช้เพื่อแทรกระยะห่างและแท็บที่ถูกต้องตามที่พบในTools > Options > Text Editor > Transact-SQL > General/Tabs
ดังนั้นหากคุณเน้นส่วนของข้อความและกดแป้นคีย์บอร์ดมันควรจะแปลงแท็บเป็น 4 ช่องว่าง (ถ้าคุณเลือกแทรก ช่องว่าง) ใช้ประเภทของการเยื้องที่คุณระบุ ฯลฯ
ตัวเลือกนี้ไม่ได้มีไว้เพื่อสร้างรหัสให้อ่านง่ายขึ้น - นี่ไม่ใช่ฟังก์ชั่นการใช้งานที่ปัจจุบัน Studio การจัดการเสนอ แม้ว่าจะมีตัวเลือกบุคคลที่สามหลายตัว แต่บางตัวเป็นภายนอกกับ Management Studio เช่น:
และมีโปรแกรมเสริมสำหรับระดับความช่วยเหลือในการจัดรูปแบบต่าง ๆ ภายในตัวแก้ไข:
ตอนนี้เหตุผลที่คุณได้รับข้อความ ...
การรวมคีย์ (Ctrl + K, Ctrl + D) ถูกผูกไว้กับคำสั่ง (Format Document) ซึ่งไม่สามารถใช้งานได้ในปัจจุบัน
... เป็นเพราะ SSMS แมปชุดคีย์นั้นเข้ากับบริบทอื่น วิธีที่คุณควรจะสามารถ "แก้ไข" สิ่งนี้ - อีกครั้งมันยังคงไม่ทำในสิ่งที่คุณต้องการให้ทำแม้ว่าการ "แก้ไข" ทำงาน - โดยทำสิ่งต่อไปนี้:
- ไปที่
Tools > Options > Environment > Keyboard
- วางเคอร์เซอร์ของคุณลงใน
Press shortcut keys:
ช่อง
- กดCtrl+ K, Ctrl+D
เปลี่ยนรายการShortcut currently used by:
แบบหล่นลงจากDataWarehouse Designer
เป็นText Editor
กดตกลง
ตอนนี้ควรจะแมปชุดแป้นพิมพ์กับตัวแก้ไขข้อความ แต่ Management Studio ย้อนกลับไปหลังจากกด OK (คุณจะได้รับข้อความแสดงข้อผิดพลาดต่อไปดังนั้นฉันคิดว่าปัญหาคือเอกสารเชื่อว่าการทำงานนี้มีอยู่ แต่การจัดการ Studio รู้ดีกว่าและไม่ได้เสนอให้ (และ Microsoft อาจจะเขียนสิ่งนี้เป็นข้อผิดพลาดในเอกสารและแก้ไขให้ถูกต้องแทนที่จะเป็นข้อบกพร่องในเครื่องมือ) อาจมีความหวังในอนาคต แต่สำหรับตอนนี้นี่เป็นปัญหาที่เป็นที่รู้จักและถูกเพิกเฉยเป็นส่วนใหญ่คุณจะทราบว่าFormatting
แท็บที่เอกสารอ้างอิงอ้างถึงไม่มีอยู่ (แม้ว่าจะมีไว้สำหรับ XML ซึ่งการรวมแป้นพิมพ์ทำงาน) เอกสารอาจจะระบุ:
ใช้การเยื้องและการจัดรูปแบบพื้นที่สำหรับภาษาที่ระบุในบานหน้าต่างการจัดรูปแบบของภาษาในส่วนตัวแก้ไขข้อความในกล่องโต้ตอบตัวเลือก มีเฉพาะในเครื่องมือแก้ไขข้อความและสำหรับบางภาษาเท่านั้น
อีกวิธีหนึ่งในการทำความเข้าใจว่าตัวเลือกการจัดรูปแบบประเภทใดที่ SSMS เสนอให้คือการไปที่Tools > Customize > Commands > Edit > Add Command... > Format
และดูรายการคำสั่งที่เป็นไปได้ที่นั่น ไม่มีสิ่งใดที่บ่งบอกว่ามีความรู้เกี่ยวกับภาษาจริงดังนั้นจึงไม่ทราบว่าจะแทรกตัวแบ่งบรรทัดหรือเพิ่มการเยื้องหรือความช่วยเหลือเพิ่มเติมในวงเล็บเป็นต้น
หากคุณต้องการการจัดรูปแบบเฉพาะภาษาเพื่อให้โค้ด T-SQL ที่มีอยู่สามารถอ่านได้มากขึ้นคุณจะไม่ได้รับมากจาก SSMS และคุณจะต้องหาตัวเลือกอื่น ๆ
Available only in the text editor
เป็นวิธีการเขียนที่มีเทคโนโลยีของบอกว่า "ไม่ได้แก้ไขแบบสอบถาม" โดยไม่ต้องชัดเจนโทรออกเชิงลบ