แสดงบทความที่มีป้ายกำกับ database แสดงบทความทั้งหมด
วิธีตรวจสอบคำสั่ง sql ที่ใช้สร้าง view ด้วย phpMyAdmin ( shows a create view statement that creates the given view )
จากบทความที่แล้ว วิธีการง่ายๆกับการสร้าง View ใน SQL ( Sql Create View ) ที่พูดถึงรายละเอียดเกี่ยวกับวิธีการสร้าง view ภายใน SQL นั้น เชื่อว่าส่วนใหญ่คงทำเป็นกันบ้างแล้ว และเมื่อเราสามารถสร้าง view ขึ้นมาได้เรียบร้อยแล้ว แต่เมื่อวันเวลาผ่านไป จำนวนโครงสร้างตารางภายใน database อาจจะเริ่มซับซ้อนขึ้นเรื่อยๆ และเมื่อนานไป อาจจะทำให้เราลืมได้ว่า view ที่เราสร้างขึ้นมานั้น เราได้ใช้คำสั่ง sql ที่ใช้สร้าง view นั้นๆ ขึ้นมาอย่างไรบ้าง หรือในกรณีที่เรามาทำงานต่อกับคนอื่นก็อาจจะพบปัญหานี้ได้ ซึ่งจริงๆ แล้ว เราสามารถตรวจสอบคำสั่ง sql ที่ใช้สร้าง view นั้นๆ ได้ง่ายๆ
วิธีตรวจสอบคำสั่ง sql ที่ใช้สร้าง view ด้วย phpMyAdmin
1. Run sql statement ใน phpmyadmin : SHOW CREATE VIEW view_name ( ชื่อตาราง view )
2. ตรวจสอบ option และเลือก Full Texts
และเมื่อเลือก Full Texts จะสังเกตุเห็นรายเอียดคำสั่ง sql ทั้งหมดที่ใช้สร้าง view นั้นๆ นั่นเอง
วิธีตรวจสอบคำสั่ง sql ที่ใช้สร้าง view ด้วย phpMyAdmin
1. Run sql statement ใน phpmyadmin : SHOW CREATE VIEW view_name ( ชื่อตาราง view )
2. ตรวจสอบ option และเลือก Full Texts
และเมื่อเลือก Full Texts จะสังเกตุเห็นรายเอียดคำสั่ง sql ทั้งหมดที่ใช้สร้าง view นั้นๆ นั่นเอง
วิธีการง่ายๆกับการสร้าง View ใน SQL ( Sql Create View )
เชื่อว่าส่วนใหญ่ใครหลายๆ คนก็คงรู้จัก MySql กับการสร้าง view และการเรียกใช้งาน view กันอยู่แล้วแต่ก็ยังคงมีบางส่วนที่ยังไม่รู้จัก view ,วิธีการสร้าง view ภายใน SQL ,รวมถึงประโยชน์ของ view ที่เรา จะสามารถนำมาประยุกต์ใช้ร่วมกับงานของเรา View ใน MySQL View เปรียบเสมือน Table จำลองที่ผู้ใช้งานสร้างขึ้นมาเพื่อให้เห็นเฉพาะมุมมองของข้อมูลที่ต้องการ ใช้งาน ซึ่งข้อมูลอาจมาจาก ตาราง 1 ตาราง หรือ มาจากการ join กันของหลายตารางก็ได้ โดยส่วนใหญ่ เราจะใช้งาน view ก็ต่อเมื่อ มีการเรียกใช้ข้อมูลนั้นซ้ำๆเพื่อประหยัดเวลาในการเขียนคำสั่ง SQL เราเรียก ตารางข้อมูลประเภทนี้ว่า “ตารางเสมือน”
แล้วเราสามารถ สร้าง view ได้อย่างไร
จากความสัมพันธ์ตามภาพด้านบนน่ะครับ เราสามารถรวมตาราง tb_order และ tbl_orderdetail เป็น view ได้ดังนี้
จากตัวอย่างด้านบน เป็นการสร้าง view ชื่อว่า order_detail_view และเราสามารถเรียกใช้งาน view ได้ดังนี้
ซึ่งการเรียกใช้งานข้อมูลจากวิวนั้นเราสามารถเรียกใช้งานเหมือนกับคำสั่งการเรียกข้อมูลจากตารางข้อมูล
ทั่วไปนั้นเอง
คุณสมบัติของวิว
-ค่าที่ปรากฎบนวิวเป็นค่าจริงในตารางข้อมูล
-สามารถปรับปรุงข้อมูลในวิวได้ ถ้าได้รับการอนุญาตจากระบบจัดการฐานข้อมูลได้แก่(insert/update/delete)
-สามารถกำหนดสิทธิการใช้งานให้ผู้ใช้งานได้ว่าจะให้ใช้วิวหรือไม่ให้ใช้ เช่นเดียวกับตารางข้อมูล โดยไม่ต้อง
ยุ่งเกี่ยวกับตารางข้อมูลจริง
-สามารถกำหนดเงื่อนไขการเรียกใช้ลงในวิวอย่างถาวร เพื่อให้ง่ายต่อผู้ใช้
ประโยชน์ของวิว
- สามารถมีมุมมองต่างกันในข้อมูลที่แตกต่างกันได้โดยการจัดรูปแบบของโครงสร้างข้อมูลของวิวนี้จะทำให้
ได้ข้อมูลทั้งแถวและคอลัมน์ตามที่ผู้ใช้งานต้องการเท่านั้น
- ลดคำสั่ง sql ในการเรียกใช้งานข้อมูล ทำให้ใช้งานได้สะดวกและง่ายต่อการเรียกข้อมูลมากขึ้น
ข้อด้อยของวิว
- ถ้าวิวสร้างมาจากตารางข้อมูลที่เชื่อมกันอย่างซับซ้อน ก็จะต้องกินเวลาในการทำงานนาน
- สำหรับวิวที่ซับซ้อนก็จะจำกัดให้อ่านข้อมูลได้อย่างเดียว ไม่สามารถ UPDATE ข้อมูลได้ ตัวอย่างเช่น
ข้อมูลที่ถูกเรียกโดย group by มาสร้างวิว
แล้วเราสามารถ สร้าง view ได้อย่างไร
จากความสัมพันธ์ตามภาพด้านบนน่ะครับ เราสามารถรวมตาราง tb_order และ tbl_orderdetail เป็น view ได้ดังนี้
CREATE VIEW `product`.`order_detail_view` AS SELECT tbl_order.order_id, tbl_order.order_date, tbl_order.order_time, tbl_orderdetail.product_id, tbl_orderdetail.qty,tbl_orderdetail.saleprice FROM tbl_order , tbl_orderdetail WHERE tbl_order.order_id = tbl_orderdetail.order_id;
จากตัวอย่างด้านบน เป็นการสร้าง view ชื่อว่า order_detail_view และเราสามารถเรียกใช้งาน view ได้ดังนี้
SELECT * FROM order_detail_view
ซึ่งการเรียกใช้งานข้อมูลจากวิวนั้นเราสามารถเรียกใช้งานเหมือนกับคำสั่งการเรียกข้อมูลจากตารางข้อมูล
ทั่วไปนั้นเอง
คุณสมบัติของวิว
-ค่าที่ปรากฎบนวิวเป็นค่าจริงในตารางข้อมูล
-สามารถปรับปรุงข้อมูลในวิวได้ ถ้าได้รับการอนุญาตจากระบบจัดการฐานข้อมูลได้แก่(insert/update/delete)
-สามารถกำหนดสิทธิการใช้งานให้ผู้ใช้งานได้ว่าจะให้ใช้วิวหรือไม่ให้ใช้ เช่นเดียวกับตารางข้อมูล โดยไม่ต้อง
ยุ่งเกี่ยวกับตารางข้อมูลจริง
-สามารถกำหนดเงื่อนไขการเรียกใช้ลงในวิวอย่างถาวร เพื่อให้ง่ายต่อผู้ใช้
ประโยชน์ของวิว
- สามารถมีมุมมองต่างกันในข้อมูลที่แตกต่างกันได้โดยการจัดรูปแบบของโครงสร้างข้อมูลของวิวนี้จะทำให้
ได้ข้อมูลทั้งแถวและคอลัมน์ตามที่ผู้ใช้งานต้องการเท่านั้น
- ลดคำสั่ง sql ในการเรียกใช้งานข้อมูล ทำให้ใช้งานได้สะดวกและง่ายต่อการเรียกข้อมูลมากขึ้น
ข้อด้อยของวิว
- ถ้าวิวสร้างมาจากตารางข้อมูลที่เชื่อมกันอย่างซับซ้อน ก็จะต้องกินเวลาในการทำงานนาน
- สำหรับวิวที่ซับซ้อนก็จะจำกัดให้อ่านข้อมูลได้อย่างเดียว ไม่สามารถ UPDATE ข้อมูลได้ ตัวอย่างเช่น
ข้อมูลที่ถูกเรียกโดย group by มาสร้างวิว


