วิธีการเขียนติดต่อ mysql หลายดาต้าเบส(database) พร้อมกัน


หน้าแรก PHP MySQL เกร็ดความรู้ วิธีการเขียนติดต่อ mysql หลายดาต้าเบส(database) พร้อมกัน
วิธีการที่จะสามารถเขียน php ติดต่อกับฐานข้อมูล mysql หลาย ๆ database ในเครื่องเซิร์ฟเวอรื(Server) เดียวกันสามารถทำได้ ถ้าจำเป็น และผมเคยเห็นน้องคนหนึ่งเขียน แบบนี้


  Code

// ติดต่อกับฐานข้อมูล mysql : db1
$conn = mysql_connect("hostname","username","password");
mysql_select_db("db1",$conn);

// ติดต่อกับฐานข้อมูล mysql : db2
$conn = mysql_connect("hostname","username","password");
mysql_select_db("db2",$conn);



ความจริงแล้ว เราไม่ต้องเขียนเพื่อเปิด connection ใหม่เพื่อติดติดต่อกับฐานข้อมูล mysql ทุกครั้ง เขียนเปิดเพียงเครั้งเดียวเท่านั้นก็พอ ดังตัวอย่างด้านล่าง


  Code

// ติดต่อกับฐานข้อมูล mysql : db1/db2
$conn = mysql_connect("hostname","username","password");
mysql_select_db("db1",$conn);
mysql_select_db("db2",$conn);



การเขียนแบบนี้สามารถทำให้ลดการใช้ memory ของโปรแกรมและทราฟิกระหว่าง php กับ mysql ได้อีกด้วย
และทำให้ไม่ต้องเสีย I/O เพิ่มอีกทาง แม้ว่าจะเป็นเพียงส่วนเล็กน้อยก็ตาม
แต่ก็จะไม่น้อยหากระบบหรือเว็บไซต์ของเรามีผู้ใช้งานปริมาณมาก ๆ ได้

จากนั้นเราก็เขียน code php เพื่อจัดการกับฐานข้อมูลต่าง ๆ ของเราได้เลย เพียงแต่การเขียนต้องระวังเรื่องการระบุ database เข้าไปด้วย เพื่อบอก mysql ว่าเราต้องการดึงข้อมูลจาก database ไหนเช่น


  Code

$SQL1 = "SELECT * FROM db1.table";
$SQL2 = "SELECT * FROM db2.table";



เท่านี้ก็สามารถทำได้ ตามเหมือนปกติแล้วครับ

ขึ้นไปด้านบน