细谈Oracle的权限
我们经常谈及Oracle的权限,比如Connect,DBA,resource, sysdba, select any
table,
select_catelog_role这样一些权限,让我们眼花缭乱的,那么如何来区分这些种类繁多的privilege中不至于眼迷离呢,这个文章将
会对你在这方面的了解起到帮助。
以上我们看到的这些权限,都是可以通过grant语句来进行权限赋予,同时也可以用过revoke来进行权限收回的操作的,但是,他们虽然都
在grant里出现,但是有各自有着本质的不同。
oracle里的权限有两种权限,系统权限和对象权限,所谓系统权限,就是oracle里已经hardcode写死的权限,这些权限,我们是
不能自己去扩展的,比如上面提到的select any table, create any table. create
table等,这里的权限已经在oracle里全部规定好了,
我们可以通过查看system_privilege_map这个数据字典表来查看所以的oracle系统内置的权限。
SQL> select * from system_privilege_map;
PRIVILEGE NAME
PROPERTY
---------- ---------------------------------------- ----------
-3 ALTER SYSTEM
0
-4 AUDIT SYSTEM
0
-5 CREATE SESSION
0
-6 ALTER SESSION
0
-7 RESTRICTED SESSION
0
&nb
相关文档:
oracle表空间操作详解
1
2
3作者: 来源: 更新日期:2006-01-04
5
6
7建立表空间
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
oracle中sql语句中select * from t_Test t where t.Id in(1,2,3......)/*数量不能大于1000个*/
解决方法 分割成多次in 然后再或上 如 select * from t_Test t where t.Id in(1,2,3......800) or t.Id in(801,802,803......1300)
在使用中最好能不使用其他条件来代替in
......
在前面学习Oracle数据库基础架构时,已经了解了Oracle的存储结构,逻辑上,Oracle的数据存放在tablespaces中,物理上存放在datafiles中。一个tablespace只能属于一个数据库(一个数据库可包括多个tablespace),包括了1个或多个数据文件。Tablespace可进一步分为segments、extents和blocks。一个datafile只属于一个数据库的一 ......
一、常用语法 --1. 删除表时级联删除约束
drop table 表名 cascade constraint
--2. 当父表中的内容被删除后,子表中的内容也被删除
on delete casecade
--3. 显示表的结构
desc 表名
--4. 创建新的用户
create user [username] identified by [password]
--5. 给用户分配权限
grant 权限1、权限2...to 用户 ......