转:http://blog.sina.com.cn/s/blog_6b58d2fa0100rgvw.html
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