ตัวจัดรูปแบบ SQL
จัดรูปแบบ SQL ตามคำสงวนของแต่ละภาษาถิ่น หรือบีบให้เหลือบรรทัดเดียว
เกี่ยวกับเครื่องมือนี้
วางคิวรีที่เพิ่งหลุดออกมาจากไฟล์ล็อก จาก dump ดีบักของ ORM หรือจากบรรทัดเดียวยาว ๆ ของเพื่อนร่วมงาน แล้วเครื่องมือนี้จะแตกมันออกเป็นอนุประโยคที่อ่านง่ายพร้อมการย่อหน้าที่สม่ำเสมอ รองรับหกภาษาถิ่น — SQL มาตรฐาน, PostgreSQL, MySQL, SQLite, SQL Server และ BigQuery — ไวยากรณ์เฉพาะภาษาถิ่นอย่าง TOP, ชื่อที่คร่อมด้วย backtick หรือชนิดข้อมูลอาร์เรย์ จึงถูกจัดรูปแบบอย่างถูกต้องแทนที่จะทำให้ตัวแยกวิเคราะห์สะดุด
ตัวพิมพ์ของคำสงวนตั้งค่าได้: ตัวพิมพ์ใหญ่ทั้งหมดเพื่อความคลาสสิก ตัวพิมพ์เล็กหากทีมของคุณชอบแบบนั้น หรือคงของเดิมไว้ไม่แตะต้อง ส่วนโหมดบีบอัดทำตรงกันข้าม — มันยุบคิวรีที่จัดรูปแบบแล้วให้เหลือบรรทัดเดียว ตัดคอมเมนต์ออกโดยคงลิเทอรัลสตริงไว้ทุกไบต์ ซึ่งเป็นสิ่งที่คุณต้องการก่อนวาง SQL ลงในคอนฟิก JSON หรือแฟล็กของ CLI
คิวรีมักมีชื่อตาราง ข้อมูลลูกค้าในลิเทอรัล หรือเบาะแสเกี่ยวกับโครงสร้างพื้นฐาน การจัดรูปแบบทำในเบราว์เซอร์ของคุณทั้งหมด สิ่งเหล่านั้นจึงไม่ไปถึงเซิร์ฟเวอร์ใด
คำถามที่พบบ่อย
- ควรเลือกภาษาถิ่น SQL ใด?
- ภาษาถิ่นที่ฐานข้อมูลของคุณพูด — มันเปลี่ยนวิธีแยกวิเคราะห์ชื่อ อัญประกาศของสตริง และคำสงวนเฉพาะถิ่น หากคุณแค่อยากจัดให้เป็นระเบียบทั่วไป SQL มาตรฐานก็ครอบคลุมแกนกลางที่ใช้ร่วมกัน หากเจอข้อผิดพลาดกับไวยากรณ์ที่ฐานข้อมูลของคุณยอมรับ นั่นมักเป็นสัญญาณให้เปลี่ยนภาษาถิ่น
- การจัดรูปแบบเปลี่ยนสิ่งที่คิวรีทำไหม?
- ไม่ การจัดรูปแบบเพียงย้ายช่องว่าง และหากเปิดไว้ก็เปลี่ยนตัวพิมพ์ของคำสงวน — ชื่อและลิเทอรัลคงไบต์เดิมทุกประการ คำสงวนของ SQL ไม่สนตัวพิมพ์ในทุกภาษาถิ่นที่รองรับ SELECT กับ select จึงเป็นคำสั่งเดียวกัน
- จัดรูปแบบหลายคำสั่งพร้อมกันได้ไหม?
- ได้ — วางสคริปต์ทั้งชุด แล้วแต่ละคำสั่งที่ปิดท้ายด้วย ; จะถูกจัดรูปแบบตามลำดับโดยมีบรรทัดว่างคั่นระหว่างกัน
- การบีบอัดลบอะไรออกบ้าง?
- คอมเมนต์บรรทัดเดียว (--) และคอมเมนต์แบบบล็อก (/* */) ถูกตัดออก ช่องว่างที่ติดกันหลายตัวยุบเหลือช่องเดียว และช่องว่างรอบลูกน้ำกับวงเล็บถูกลบทิ้ง ส่วนข้อความในอัญประกาศเดี่ยว อัญประกาศคู่ และ backtick จะไม่ถูกแตะต้องเลย รวมถึงการ escape ด้วยอัญประกาศซ้อน