oracle 11g之前好像不行,Oracle 11a可直接alter table t1 read only
或者设立专用的表空间、建立只读的view及表权限控制....
可以建一张视图和该表一样的,只能被读取 例如:表T1 create view v_t1 as select * from T1
视图也可以插入、删除、更新,WITH READ ONLY,加只读视图限制
创建只读视图。 create or replace view 视图名 as select * from 表名 with read only
我现在想实现的是不让其他用户操作,但自己还是可以更改数据的。也就是说想做一个排他功能。 表结构不能修改,也不能创建视图。 alter table t1 read only 是锁住表了,但是自己也不能修改,请高手指点!!!!!
你可以在使用前,自己加锁。 select * from emp for update; 或者 LOCK TABLE employees IN EXCLUSIVE MODE NOWAIT;LOCK TABLE employees@remote IN SHARE MODE;这样就可以自己锁住表,别人无法修改。
例如:表T1
create view v_t1
as select * from T1
create or replace view 视图名 as
select * from 表名
with read only
表结构不能修改,也不能创建视图。
alter table t1 read only
是锁住表了,但是自己也不能修改,请高手指点!!!!!
select * from emp for update;
或者
LOCK TABLE employees
IN EXCLUSIVE MODE
NOWAIT;LOCK TABLE employees@remote
IN SHARE MODE;这样就可以自己锁住表,别人无法修改。