ให้เราเข้าใจว่าคำสั่ง SQL สามารถดำเนินการจากไฟล์ข้อความบนไคลเอนต์ MySQL ได้อย่างไร โดยทั่วไปแล้วไคลเอนต์ mysql จะใช้ในลักษณะโต้ตอบ เรามาดูตัวอย่างกัน −
shell> mysql db_name
วาง SQL Satements ในไฟล์ข้อความ
นอกจากนี้ยังสามารถใส่คำสั่ง SQL ลงในไฟล์แล้วบอกให้ mysql อ่านข้อมูลจากไฟล์นั้น ๆ เมื่อต้องการทำเช่นนี้ ไฟล์ข้อความ text_file จะถูกสร้างขึ้นก่อน
ไฟล์ข้อความนี้จะมีคำสั่งที่ต้องดำเนินการ เรามาดูตัวอย่างเพื่อทำความเข้าใจกัน -
shell> mysql db_name < text_file
ถ้าคำสั่ง USE db_name ถูกวางเป็นคำสั่งแรกในไฟล์ข้อความ ไม่จำเป็นต้องระบุชื่อฐานข้อมูลบนบรรทัดรับคำสั่ง เรามาดูตัวอย่างเพื่อทำความเข้าใจกัน -
shell> mysql < text_file
หาก mysql ทำงานอยู่ ไฟล์สคริปต์ SQL สามารถดำเนินการได้โดยใช้คำสั่งต้นทางหรือ \ สั่งการ. เรามาดูตัวอย่างเพื่อทำความเข้าใจกัน -
mysql> source file_name mysql> \. file_name
บางครั้ง ผู้ใช้อาจต้องการให้สคริปต์แสดงข้อมูลความคืบหน้าแก่พวกเขา สำหรับข้อความแทรกนี้สามารถใช้ -
SELECT '<info_to_display>' AS ' ';
ผลลัพธ์
<info_to_display>
mysql สามารถเรียกใช้โดยใช้ตัวเลือก --verbose สิ่งนี้ทำให้ทุกคำสั่งแสดงก่อนผลลัพธ์ที่สร้าง
-
mysql ละเว้นอักขระ Unicode byte order mark (BOM) ที่จุดเริ่มต้นของไฟล์อินพุต
-
ก่อนการทำงานนี้ ฟังก์ชันเหล่านี้จะถูกอ่านและส่งไปยังเซิร์ฟเวอร์ ส่งผลให้เกิดข้อผิดพลาดทางไวยากรณ์
-
การแสดง BOM ไม่ได้ทำให้ mysql เปลี่ยนชุดอักขระเริ่มต้น
-
ในการทำเช่นนี้ mysql สามารถเรียกใช้ด้วยตัวเลือกเช่น --default-character-set=utf8