1. 程式人生 > >視圖與索引

視圖與索引

合並 eat int 設置 行數據 cnblogs 基表 優點 insert

什麽是視圖?

  視圖是一種常用的數據庫對象,是一種虛擬表

   在視圖中被查詢的表稱為基表

視圖的優點

  1. 提高數據操作效率
  2. 簡化操作
  3. 定制數據
  4. 合並分割數據
  5. 安全性

創建視圖

  

create  view  視圖名(列名....)
[with  encryption]
as
select  語句
[with check  option]


--with check  option  :不滿足視圖的定義不允許插入

例題

--1.創建了一個“V2”的視圖,用於查詢信息安全技術專業的女生的學生信息,包括學號、姓名、性別、出生日期、專業名、所在系。(加限制條件,不是視圖定義的數據不能插入成功)。
create view V2 As select 學號,姓名,性別,出生日期,專業名,所在系 from XSQK where 專業名=信息安全技術 and 性別= with check option go

--2.向v2中分別添加3行數據,觀察是否能夠添加成功,為什麽?
--  ‘2012130206’,‘李好’,‘男’,‘1996-04-22’,‘網絡工程’,‘計算機應用’
--  ‘2012130106’,‘周星星’,‘女’,‘1986-07-08’,‘信息安全’,‘計算機應用’
--  ‘2012130107’,‘周全’,‘男’,‘1986-07-08’,‘信息安全’,‘計算機應用’
insert into v2 values(2012130206,李好,,1996-04-22,網絡工程,計算機應用) --不能運行成功,與設置的專業名不同,不滿足視圖的定義 insert into v2 values(2012130106,周星星,,1986-07-08,信息安全技術,計算機應用) --能運行成功 insert into v2 values( 2012130107,周全,,1986-07-08,信息安全技術,計算機應用) --不能運行成功,性別不符合條件
--3更新視圖v2數據  將學號為2012130102的學生姓名改為自己的姓名。
update v2 set 姓名=xxx where 學號=2012130102
--4通過視圖v2刪除數據    刪除姓名是薛冰的學生信息。



 delete from V2 where 姓名=薛冰

視圖與索引