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

ดูใน SQL Server

บทความนี้อธิบายวิธีสร้าง อัปเดต และลบ VIEW ใน SQL Server พร้อมไวยากรณ์และตัวอย่าง

VIEW ใน SQL Server คืออะไร

โดยทั่วไป VIEW เป็นตารางเสมือนที่ไม่มีอยู่ใน SQL Server มันถูกสร้างขึ้นโดยแบบสอบถามที่รวมตั้งแต่ 1 ตารางขึ้นไป

สร้าง VIEW ใน SQL Server

ไวยากรณ์

 สร้างมุมมอง  [ten_schema.]ten_view AS 
[WITH { ENCRYPTION | SCHEMABINDING | VIEW_METADATA}
SELECT bieu_thuc
FROM bang
[WHERE dieu_kien ];

ten_schema

นี่คือชื่อของสคีมา (แปลว่า schema หรือเนมสเปซ) ที่เป็นของตาราง

ten_view

ชื่อของ VIEW ต้องการสร้าง

การเข้ารหัส

เข้ารหัสข้อความของคำสั่ง ALTER VIEW ใน sys.syscomments

SCHEMABINDING

ตรวจสอบให้แน่ใจว่าไม่มีการแก้ไขคำจำกัดความของตารางเพื่อไม่ให้มีผลกับ VIEW

VIEW_METADATA

ตรวจสอบให้แน่ใจว่า SQL Server มีข้อมูลเมตาของ VIEW

bieu_thuc

คอลัมน์หรือค่าจากการคำนวณที่ต้องการเพิ่มใน VIEW

ระบุ

คำจำกัดความของตาราง VIEW ต้องมีอย่างน้อย 1 ตารางในส่วนคำสั่ง FROM

WHERE dieu_kien

ตัวเลือก ต้องเป็นไปตามเงื่อนไขเพื่อให้บันทึกแสดงใน VIEW

ตัวอย่างเช่น

 สร้าง V IEW sp_htk AS 
SELECT sanpham.id_sanpham, sanpham.ten_sanpham, hangtonkho.chatluong
FROM sanpham
INNER JOIN hangtonkho
ON sanpham.id_sanpham = hangtonkho.id_sanpham
WHERE sanph am.id_sanpham> =1,000;

คำสั่ง CREATE VIEW ด้านบนจะสร้างตารางเสมือนตามชุดผลลัพธ์ของคำสั่ง SELECT VIEW นี้จะมีชื่อว่า sp_htk

ขณะนี้คุณสามารถสืบค้น VIEW ได้ดังนี้

 SELE CT * 
FROM s p_htk;

อัปเดตมุมมอง

คุณสามารถแก้ไข VIEW ใน SQL Server ได้โดยไม่ต้องลบการสร้างใหม่โดยใช้คำสั่ง ALTER VIEW

ไวยากรณ์

 ALT ER VIEW [ten_schema.] ten_view AS 
[WITH {ENCRYPTION | SCHEMABINDING | VIEW_METADATA}
SELECT bieu_thuc
FROM bang
WHERE d ieu_kien;

ตัวอย่างเช่น

 เปลี่ยนมุมมอง  sp_htk AS 
SELECT sanpham.ten_sanpham, hangtonkho.soluong
FROM sanpham
INNER JOIN hangtonkho
ON sanpham.id_sanpham = hangtonkho.id_sanpham
WHERE sanpham.id_sanpham >= 500
AND sanpham.id_san แพม <=1,000;

ตัวอย่างเช่น คำสั่ง ALTER VIEW ด้านบนจะอัปเดต VIEW ที่ชื่อ sp_htk โดยไม่ลบ ต้องมี VIEW ก่อนจึงจะสามารถรันคำสั่งอัพเดตได้

ลบมุมมอง

ไวยากรณ์

 DROP VIEW ten_view; 

ten_view

ชื่อของ VIEW ต้องการลบ

ตัวอย่างเช่น

<ก่อนหน้า> DROP VIEW sp_htk;

คำสั่ง DROP VIEW นี้จะลบ VIEW ที่ชื่อ sp_htk ใน SQL Server