CREATE [OR REPLACE] [FORCE|NOFORCE] VIEW view_name
网站的建设创新互联专注网站定制,经验丰富,不做模板,主营网站定制开发.小程序定制开发,H5页面制作!给你焕然一新的设计体验!已为高空作业车租赁等企业提供专业服务。
[(alias[, alias]...)]
AS subquery
[WITH CHECK OPTION [CONSTRAINT constraint]]
[WITH READ ONLY]
OR REPLACE :若所创建的试图已经存在,ORACLE自动重建该视图;
FORCE :不管基表是否存在ORACLE都会自动创建该视图;
NOFORCE :只有基表都存在ORACLE才会创建该视图:
alias :为视图产生的列定义的别名;
subquery :一条完整的SELECT语句,可以在该语句中定义别名;
WITH CHECK OPTION :插入或修改的数据行必须满足视图定义的约束;
WITH READ ONLY :该视图上不能进行任何DML操作。
CREATE OR REPLACE VIEW dept_sum_vw
(name,minsal,maxsal,avgsal)
AS
SELECT d.dname,min(e.sal),max(e.sal),avg(e.sal)
FROM emp e,dept d
WHERE e.deptno=d.deptno
GROUP BY d.dname;
--给用户授权创建视图
-- grant create all view to zdgshr; 所有数据库都能创建视图的用户
grant create view to zdgshr;
--创建简单视图
create view temp
as
select * from zd_member_basic_info;
--测试
select * from temp where rownum=1;
--创建简单视图:只读
create or replace view temp1
as
select id,job_number,name,dept_id from zd_member_basic_info
with read only;
--测试
insert into temp1(id,job_number,name,dept_id) values(1,0,'张三',1300);
视图的删除:
DROP VIEW VIEW_NAME语句删除视图。
删除视图的定义不影响基表中的数据。
只有视图所有者和具备DROP VIEW权限的用户可以删除视图。
视图被删除后,基于被删除视图的其他视图或应用将无效。
四、视图分为简单视图和复杂视图。
简单视图只从单表里获取数据;复杂视图从多表里获取数据。
简单视图不包含函数和数据组;复杂视图包含函数和数据组。
简单视图可以实现DML操作;复杂视图不可以。
create or replace view temp1
as
select distinct name,job_number,dept_id from zd_member_basic_info
with read only;
delete from zd_member_basic_info where name='而过';
create or replace view temp
as
select * from zd_member_basic_info order by name;
删除一个用户下的所有数据,可以采用删除用户,然后重新建立同名用户的方式。
1、删除用户:
DROP USER 用户名 CASCADE;2、创建用户:
create user 用户名 identified by 密码;3、赋予相应权限:
grant connect,resource,dba to 用户名;
再sql*plus中使用system身份登陆数据库
然后执行下面语句:
DROP
USER
user_name
CASCADE;
这样你该用户包括该用户下的表,试图,
同义词
,过程,
索引
,及相关的一切就都不见了。
然后再新建一个同名用户,赋予相应
权限
就可以了。
祝好运~~
想彻底删除的话,建议你还是用DBCA,这样删除的比较彻底,
跟这个实例相关的内容都会被删除的!
开始——程序——Oracle10g——配置和移植工具—DBCA
进入DBCA后,选择删除数据库,就会显示你机器上的
所有实例数据库,选择要删除的就OK