Oracle视图的curd

2014-11-24 18:27:19 · 作者: · 浏览: 0

1.使用create or replace view命令创建视图


语法格式:


create or replace view 视图名


as select 查询子句


例子:


create or replace view tb_user_view1 as select count(username) shuliang,username from tb_user group by username order by shuliang asc


2.使用create or replace view命令修改视图


语法格式:


create or replace view 视图名


as select 查询子句


例子:


create or replace view tb_user_view1 as select * from tb_user where username='a'


3.使用drop view 命令删除视图


格式:


drop view 视图名


例子:


drop view tb_user_view1


4.利用视图操作基本表


---添加数据行(直接影响基本表)


insert into tb_user_view1 values(8,'insert',5)


---修改数据行(影响基本表)


update tb_user_view1 set username='update' where bh=3


---删除数据行(直接影响基本表)


delete from tb_user_view1 where bh=2


多表关联创建视图


格式:CREATE OR REPLACE FORCE VIEW 视图名(列表名1,列表名2,……,列表名n)as select 查询子句


例子:


CREATE OR REPLACE FORCE VIEW tb_username_address (bh, username, address_id, address) AS
SELECT u.bh,u.username,a.bh,a.address FROM tb_user u,tb_address a WHERE u.address_id=a.bh


修改视图


格式:CREATE OR REPLACE FORCE VIEW 视图名(列表名1,列表名2,……,列表名n)as select 查询子句


例子:
CREATE OR REPLACE FORCE VIEW tb_username_address (bh, username, address_id, address) AS
SELECT u.bh,u.username,a.bh,a.address FROM tb_user u,tb_address a WHERE u.address_id=a.bh and a.address='xinxiang'
drop view 命令删除视图


格式:


drop view 视图名


例子:drop view tb_username_address


删除数据行(影响基本表):


例子:delete tb_username_address where bh=5


视图来自多个基本表时,不允许添加数据。


修改数据行(影响基本表):


例子:update tb_username_address set username='updaten' where bh=6