ฟอร์แมต SQL ใน SQL Server Management Studio


250

ใน Visual Studio และ IDE อื่น ๆ คุณสามารถจัดรูปแบบรหัสของคุณโดยอัตโนมัติด้วยแป้นพิมพ์ลัดผ่านเมนูหรืออัตโนมัติเมื่อคุณพิมพ์

ฉันสงสัยว่าถ้ายังมีวิธีเปิดใช้งานคุณลักษณะมาตรฐานนี้ใน SQL Server Management Studio อยู่หรือไม่

ฉันกำลังทำงานกับ procs ที่เก็บไว้ขนาดใหญ่ที่ยุ่งเหยิงวุ่นวายของ SQL ที่จัดรูปแบบไม่ดีและมันคงจะดีถ้าฉันสามารถไป "เลือกทั้งหมด -> ฟอร์แมต SQL"


1
SQLinForm จัดให้มีคุณสมบัติปุ่มลัด
กุยโด

1
ตอนนี้มีฟอร์แมตออนไลน์ฟรี: sqlinform.com/sql_formatter_online.html
Guido

ออนไลน์คุณสามารถใช้devtoolsonline20190908040816.azurewebsites.net/DevTools/
......

อัปเดต Q เพื่อเป็นหัวข้อ
แอนดรูว์

คำตอบ:


270

คำตอบที่ล่าช้า แต่หวังว่าจะคุ้มค่า: ฟอร์แมต T-SQL ของ Poor Man เป็นโอเพ่นซอร์ส (ฟรี) ฟอร์แมต T-SQL พร้อมการสนับสนุนแบตช์ / สคริปต์ T-SQL ที่สมบูรณ์ (DDL ใด ๆ , DML ใด ๆ ), ปลั๊กอิน SSMS, กลุ่มบรรทัดคำสั่ง ฟอร์แมตเตอร์และตัวเลือกอื่น ๆ

สามารถใช้งานได้ทันที / ออนไลน์ที่http://poorsql.comและเพิ่งจบการศึกษาเป็น "รุ่น 1.0" (เป็นรุ่นเบต้าในสองสามเดือน) โดยเพิ่งได้รับการสนับสนุนMERGEงบOUTPUTประโยคและสิ่งอื่น ๆ ที่พิถีพิถัน .

SSMS Add-in ช่วยให้คุณสามารถตั้งค่าฮ็อตคีย์ของคุณเอง (ค่าเริ่มต้นคือCtrl- K, Ctrl- F, เพื่อให้ตรงกับ Visual Studio) และจัดรูปแบบสคริปต์ทั้งหมดหรือเพียงแค่รหัสที่คุณเลือก / ไฮไลต์ถ้ามี การจัดรูปแบบผลลัพธ์สามารถกำหนดเองได้

ใน SSMS 2008 มันรวมกันอย่างดีกับความรู้สึกในตัวที่มีประสิทธิภาพให้มากขึ้นหรือน้อยลงฟังก์ชั่นฐานเดียวกับพรอมต์ SQL ของ Red Gate (แน่นอน SQL พรอมต์มีแน่นอนสิ่งพิเศษเช่น snippets, การเขียนสคริปต์วัตถุอย่างรวดเร็ว, ฯลฯ )

คำติชม / คำขอคุณสมบัติเป็นมากกว่าการต้อนรับโปรดให้มันวนถ้าคุณได้รับโอกาส!

การเปิดเผยข้อมูล: นี่อาจจะชัดเจนอยู่แล้ว แต่ฉันได้เขียนไลบรารี่ / เครื่องมือ / เว็บไซต์นี้ดังนั้นคำตอบนี้ก็เป็นการส่งเสริมตนเองที่ไร้ยางอาย :)


2
บน SQL Server 2012 ค่าเริ่มต้น Ctrl + K ทางลัด Ctrl + F ไม่ทำงานตามที่ระบุว่ามันถูกผูกไว้กับการเลือกรูปแบบแล้ว มันทำงานหลังจากเปลี่ยนได้จากการDataWarehouse Designer::Ctrl+k, Ctrl+f Global::Ctrl+k, Ctrl+j
Marco Lackovic

5
ดูคำแนะนำสำหรับ SSMS 2014 instalations stackoverflow.com/questions/23303026/ …
Alexander Sigachov

2
เครื่องมือที่ยอดเยี่ยม แต่เข้ากันไม่ได้กับ 2016 RTM
dmeglio

1
@ dman2306 - ตัวติดตั้งใช้งานร่วมกับ 2016 (และ 17) ได้แล้วในตอนนี้
เทาร

2
@ จอร์แดน: ใน Windows 10. Net Framework 3.5 SP1 (รวมถึง. Net 2.0) เป็นคุณสมบัติเสริมของ windows ซึ่งสามารถเปิดใช้งานได้ในหน้าจอ / ฟังก์ชัน "เปิดหรือปิดคุณสมบัติ Windows" มันเรียกว่า ". NET Framework 3.5 (รวม. NET 2.0 และ 3.0)" และอยู่ด้านบนสุดของรายการคุณลักษณะที่เป็นตัวเลือก - สิ่งนี้ไม่ได้ผลสำหรับคุณหรือไม่ (ใช่ขอโทษที่ต้องใช้. Net 2.0 ในยุคนี้อาจไม่สมเหตุสมผล ... สร้างฉบับgithub.com/TaoK/PoorMansTSqlFormatter/issues/199เพื่อติดตาม)
Tao

137

มีเคล็ดลับพิเศษที่ฉันค้นพบโดยบังเอิญ

  1. เลือกแบบสอบถามที่คุณต้องการจัดรูปแบบ
  2. Ctrl+ Shift+ Q(นี่จะเปิดคิวรีของคุณในตัวออกแบบคิวรี)
  3. ถ้าอย่างนั้นก็ไปตกลง Voila! นักออกแบบคิวรีจะจัดรูปแบบคิวรีให้คุณ ข้อแม้คือว่าคุณสามารถทำเช่นนี้สำหรับงบและไม่ใช่รหัสขั้นตอน แต่ดีกว่าไม่มีอะไร

9
เคล็ดลับที่ดี น่าเศร้าที่วิธีการนี้ใช้ได้ผล แต่เป็นงานที่ค่อนข้างแย่ แต่อย่างน้อยก็มีบางอย่างในตัว
John Homer

มันจัดรูปแบบ แต่ไม่ใช่วิธีที่คาดหวัง อย่างไรก็ตามมีบางอย่างที่ดีกว่าไม่มีอะไรเลย :) ขอบคุณสำหรับเคล็ดลับ
Jaini Naveen

2
เท่าที่ฉันสามารถบอกได้ถึงแม้ว่ามันจะไม่ได้ทำงานที่ดีที่สุดจริงๆมันทำอะไรบางอย่างและมันออกมาจากกล่องและคุณไม่ต้องจ่ายมัน แต่มีเพียงคนเดียวที่คิดว่าติ๊กมันมีประโยชน์ ฉันประหลาดใจจริง ๆ ฉันคิดว่าฉันมีสิ่งนี้ถูกตรึงไว้ ;-)
จัสติน

1
ฉันค้นพบว่าแบบสอบถามถูกจัดรูปแบบในทำนองเดียวกันเมื่อวางลงในมุมมองใหม่ แต่นี่สะอาดกว่า ... +1
Feckmore

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