Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ค่าเริ่มต้นของตัวเลือก MySQL, ตัวเลือกที่คาดหวังค่าและ =Sign


ให้เราเข้าใจตัวเลือกเริ่มต้น ตัวเลือกที่คาดหวังค่า และเครื่องหมาย '=' ใน MySQL -

ตามแบบแผน รูปแบบยาวของตัวเลือกที่กำหนดค่าจะถูกเขียนโดยใช้เครื่องหมายเท่ากับ (=) ได้แสดงไว้ด้านล่าง -

mysql --host=tonfisk --user=jon

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

mysql --host tonfisk --user jon

ในทั้งสองกรณีข้างต้น ไคลเอนต์ mysql พยายามเชื่อมต่อกับเซิร์ฟเวอร์ MySQL ที่ทำงานอยู่บนโฮสต์ชื่อ “tonfisk” ด้วยความช่วยเหลือของบัญชีที่มีชื่อผู้ใช้คือ “jon”

เนื่องจากลักษณะการทำงานนี้ ปัญหาอาจปรากฏขึ้นเป็นครั้งคราวเมื่อไม่ได้ระบุค่าสำหรับตัวเลือกที่คาดว่าจะระบุค่า

ตัวอย่าง

เมื่อผู้ใช้เชื่อมต่อกับเซิร์ฟเวอร์ MySQL ที่ทำงานบนโฮสต์ tonfisk ในฐานะผู้ใช้ jon คำสั่งด้านล่างจะถูกเรียกใช้ -

shell> mysql --host 85.224.35.45 --user jon

ผลลัพธ์

ยินดีต้อนรับสู่มอนิเตอร์ MySQL คำสั่งลงท้ายด้วย; หรือ \g.ID การเชื่อมต่อ MySQL ของคุณคือ 3Server เวอร์ชัน:8.0.25 Source distributionType 'help;' หรือ '\h' เพื่อขอความช่วยเหลือ พิมพ์ '\c' เพื่อล้างบัฟเฟอร์

จากนั้นดำเนินการคำสั่งด้านล่าง −

สอบถาม

mysql> SELECT CURRENT_USER();

ผลลัพธ์

<ก่อนหน้า>+----------------+| CURRENT_USER() |+----------------+| jon@% |+----------------+1 แถวในชุด (0.00 วินาที)

เมื่อละค่าที่ต้องการสำหรับหนึ่งในตัวเลือกเหล่านี้ จะทำให้เกิดข้อผิดพลาด ข้อผิดพลาดอาจมีลักษณะดังที่แสดงด้านล่าง -

shell> mysql --host 85.224.35.45 –user

ผลลัพธ์

mysql:ตัวเลือก '--user' ต้องมีอาร์กิวเมนต์

ในกรณีข้างต้น mysql ไม่พบค่าหลังตัวเลือก --user เนื่องจากไม่มีสิ่งใดตามมาในบรรทัดคำสั่ง แต่ถ้าผู้ใช้ละเว้นค่าสำหรับตัวเลือกที่ไม่ใช่ตัวเลือกสุดท้ายที่จะใช้ จะเกิดข้อผิดพลาดอื่นซึ่งผู้ใช้อาจไม่คาดหวัง -

shell> mysql --host --user jon

ผลลัพธ์

ข้อผิดพลาด 2005 (HY000):โฮสต์เซิร์ฟเวอร์ MySQL ที่ไม่รู้จัก '--user' (1)