數據的DML語句及視圖

插入語句

向某張表插入數據

insert into tablename(attr1, attr2 ...., attrn)
values (常量1,常量2,....,常量n)
insert into tablename
values (常量1,常量2,....,常量n)

例如:
將一個新學生記錄插入到student表中

insert into student (sno,sname,ssex,sdept,sage)
values('201215128','陳冬','男','IS',18)

-- 不寫列名時,注意值和定義時的值的順序要相同
insert into student
values('201215128','陳冬','男',,18,'IS')

上述爲單條插入,也可以插入子查詢的結果

insert into tablename(attr1, attr2 ...., attrn)
子查詢

在這裏插入圖片描述


修改語句

update tablename
set 列名=表達式,列名=表達式....
where .....

其中set指定修改的列和值
where指定哪些元組修改

-- 將學生201215121的年齡改爲22歲
update student
set sage=22
where sno='201215121'

刪除語句

delete from tablename
where ....
-- 刪除學號201215128的學生記錄
delete from student
where sno='201215128'
-- 刪除所有學生信息
delete from student --慎重使用

視圖

視圖的特點:

  1. 虛標,是從一個或多個基本表中導出的表
  2. 只存放視圖的定義,不出現冗餘數據,即不會真的有一張視圖
  3. 基本表數據變化,視圖數據也跟着變化

視圖的操作:
4. 查詢
5. 刪除
6. 受限跟新
7. 定義基於該視圖的新視圖

-- 創建視圖
create view view_name(列名,列名....)
as
子查詢 -- 子查詢不允許有order by 和 distinct
with check option -- 這句可選
-- 加上這句話,就是透過視圖更新時候,不能破壞子查詢的條件表達式

在這裏插入圖片描述

行列子集視圖:單表到處,求掉某些行和列,保留碼


刪除視圖

drop view viewname cascade
-- cascade可選,爲級聯操作,刪除時將從此視圖導出的視圖一併刪除
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章