การดำเนินการฐานข้อมูลใด ๆ ที่คุณดำเนินการควรมีมุมมองที่เหมาะสม มุมมองใน SQL นั้นเป็นตารางเสมือนจริง เมื่อฉันพูด โต๊ะ ต้องมีแถวและคอลัมน์ ดังนั้นบทความนี้จะช่วยให้คุณเรียนรู้เกี่ยวกับวิธีสร้างมุมมองและการดำเนินการต่างๆที่คุณสามารถทำได้
หัวข้อที่กล่าวถึงในบทความนี้ ได้แก่ :
เอาล่ะ!
View คืออะไร?
มุมมองใน SQL คือตารางเสมือน แม้จะมีแถวและคอลัมน์เหมือนที่มีอยู่ในตารางฐานข้อมูลปกติ นี่คือตารางซึ่งสามารถดูส่วนที่เลือกของข้อมูลจากตารางอย่างน้อยหนึ่งตารางได้
มุมมองไม่มีข้อมูลของตัวเอง ส่วนใหญ่จะใช้เพื่อ จำกัด การเข้าถึงฐานข้อมูลหรือเพื่อซ่อนความซับซ้อนของข้อมูล มุมมองถูกจัดเก็บเป็นไฟล์ เลือก คำสั่งในฐานข้อมูล มุมมองจะขึ้นอยู่กับการดำเนินการ DML ในมุมมองเช่น แทรก , อัปเดต ลบมีผลต่อข้อมูลในตารางต้นฉบับ
ตอนนี้เรามาทำความเข้าใจวิธีสร้าง View กัน
จะสร้าง View ได้อย่างไร?
การสร้าง View เป็นงานง่ายๆ เพียงทำตามไวยากรณ์และรู้เนื้อหาในตาราง
ไวยากรณ์
วิธีสแกนหาอักขระใน java
สร้าง VIEW view_name เป็นรายการคอลัมน์ที่เลือกจาก table_name [WHERE condition]
ที่นี่
view_name คือชื่อของมุมมองและ
เลือก คำสั่งใช้เพื่อกำหนดแถวและคอลัมน์
ตอนนี้ตัวอย่างจะเป็น:
สร้าง VIEW view_product โดยเลือก product_id, product_name FROM product
ที่นี่ view_name คือผลิตภัณฑ์และเลือก product_id และชื่อจากผลิตภัณฑ์ตาราง
ชื่อ | ID |
รถยนต์ | 56 |
จักรยาน | 25 |
รถลาก | 19 |
การสร้างมุมมองจากหลายตาราง
สามารถสร้างมุมมองจากหลายตารางได้โดยเพียงแค่รวมตารางหลาย ๆ ตารางไว้ในคำสั่ง SELECT
สร้างมุมมอง MarksView เป็น Select StudentDetails.NAME, StudentDetails.ADDRESS, StudentMarks.MARKS จาก StudentDetails, StudentMarks WHERE StudentDetails.NAME = StudentMarks.NAME
ที่นี่คุณสามารถเลือก ViewMarks
เลือก * จาก MarksView
ชื่อ | ที่อยู่ | เครื่องหมาย |
จอห์น | กัลกัตตา | 70 |
วาคานด้า | เจนไน | 80 |
จิม | บังกาลอร์ | 65 |
ที่นี่เครื่องหมายที่อยู่และชื่อถูกเลือก และเราจะค้นหาเงื่อนไขที่ MarksName = StudentName หมายถึงสามารถเลือกมุมมองได้ ตอนนี้เพื่อแสดงข้อมูลให้ใช้แบบสอบถามเลือก * จาก MarksView
ตอนนี้เรามาทำความเข้าใจเกี่ยวกับการดำเนินงานที่ดำเนินการอยู่
การดำเนินงาน
อัปเดต
คุณสามารถอัปเดตมุมมองได้โดยปฏิบัติตามกฎเหล่านี้:
- มุมมองถูกกำหนดโดยยึดตามตารางเดียวเท่านั้น
- ข้อมูลพร็อพเพอร์ตี้ต้องมีคีย์หลักของตารางตามที่สร้างมุมมอง
- ไม่ควรมีฟิลด์ใด ๆ ที่สร้างขึ้นจากฟังก์ชันรวม
- View ต้องไม่มีอนุประโยค DISTINCT ในนิยาม
- ต้องไม่มี GROUP BY หรือ HAVING clause ในคำจำกัดความ
- ข้อมูลพร็อพเพอร์ตี้ต้องไม่มี SUBQUERIES ในคำจำกัดความ
- หากมุมมองที่คุณต้องการอัปเดตเป็นไปตามมุมมองอื่นควรอัปเดตในภายหลัง
- ฟิลด์เอาต์พุตที่เลือกของมุมมองต้องไม่ใช้ค่าคงที่สตริงหรือนิพจน์ค่า
ไวยากรณ์:
UPDATE SET =, =, ..... ที่ไหน
การแทรก
สามารถแทรกแถวข้อมูลลงในมุมมองได้กฎเดียวกันกับที่ใช้กับคำสั่ง Update ยังใช้กับคำสั่ง Insert คุณสามารถแทรกมุมมองเช่นเดียวกับที่คุณทำในตารางฐานข้อมูล
การลบ
เมื่อคุณได้เรียนรู้วิธีแทรกและอัปเดต Views ใน SQL แล้วเรามาทำความเข้าใจวิธีลบมุมมองกัน
สามารถลบแถวข้อมูลออกจากมุมมองได้ กฎเดียวกันที่ใช้กับคำสั่ง Update และ Insert ใช้กับคำสั่ง Delete
ตัวอย่าง:
พิจารณาว่าคุณมีตารางรายชื่อลูกค้าที่มี ID ชื่ออายุที่อยู่และเงินเดือน แบบสอบถามนี้ที่นี่จะช่วยคุณลบแถวใดแถวหนึ่งออกจากตาราง
SQL> ลบจาก CUSTOMERS_VIEW WHERE อายุ = 20
ในที่สุดสิ่งนี้จะลบแถวออกจากตารางฐานลูกค้าและสิ่งเดียวกันนี้จะสะท้อนในมุมมองเอง.
ตอนนี้จะวาง Views ใน SQL ได้อย่างไร?
วาง
เมื่อใดก็ตามที่คุณมีมุมมองเห็นได้ชัดว่าคุณต้องการวิธีที่จะลดมุมมองหากไม่ต้องการอีกต่อไป ต่อไปนี้เป็นไวยากรณ์ของวิธีการวาง View ใน SQL
ไวยากรณ์:
DROP VIEW view_name
เพียงแค่เลือกมุมมองและเพิ่มคำสั่งนี้เพื่อวาง
ตอนนี้เรามาดูข้อดีของการใช้ Views ใน SQL กัน
ตัวดำเนินการแก้ไขขอบเขต c ++
ข้อดี
- ความปลอดภัย: คุณสามารถ จำกัด ไม่ให้ผู้ใช้เข้าถึงตารางได้โดยตรงและอนุญาตให้เข้าถึงข้อมูลส่วนย่อยผ่านมุมมอง
- ความเรียบง่าย: มันคือความสัมพันธ์และตารางมากมาย
- ความสม่ำเสมอ: ยคุณสามารถซ่อนตรรกะการสืบค้นที่ซับซ้อนและการคำนวณในมุมมอง
ด้วยเหตุนี้เราจึงมาถึงตอนท้ายของบทความนี้เกี่ยวกับ Views ใน SQL ฉันหวังว่าคุณจะมีความชัดเจนเกี่ยวกับหัวข้อที่กล่าวถึงในบล็อกนี้
หากคุณต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ MySQL และทำความรู้จักกับฐานข้อมูลเชิงสัมพันธ์แบบโอเพนซอร์สนี้จากนั้นตรวจสอบไฟล์ ซึ่งมาพร้อมกับการฝึกอบรมสดที่นำโดยผู้สอนและประสบการณ์โครงการในชีวิตจริง การฝึกอบรมนี้จะช่วยให้คุณเข้าใจ MySQL ในเชิงลึกและช่วยให้คุณบรรลุความเชี่ยวชาญในเรื่องนั้น ๆ
มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นของ ' มุมมองใน SQL ” แล้วฉันจะติดต่อกลับไป