常见问题
- 修改nls_lang变量
注册表:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE\KEY_OraDb11g_home1。
SIMPLIFIED CHINESE_CHINA.ZHS16GBK改为American_America.AL32UTF8 - pldev Dynamic Performance Tables not accessible 错误
在 Tools->Preferences->Options里 把Automatic Statistics前的那个勾子去掉
表空间
表空间的分类
1.永久表空间
2.临时表空间
3.UNDO(回退)表空间
创建表空间
create [TEMPORARY] tablespace
tablespace_name
TEMPFILE|DATAFILE 'xx.dbf' SIZE xx
--永久表空间
create tablespace test1_tablespace datafile 'test1file.dbf' size 100m;
--临时表空间
create temporary tablespace temptest1_tablespace tempfile 'tempfile.dbf' size 10m;
--永久表空间信息
select file_name from dba_data_files;
--临时表空间信息
select file_name from dba_temp_files
用户管理
创建用户
create user <user_name>
identified by <password>
default tablespace <default tablespace>
temporary tablespace <temporary tablespace>;
create user zhu identified by asd123 default tablespace test1_tablespace;
select username from dba_users;
授权
grant connect to zhu;
管理用户
连接用户
connect 用户名/口令
更改密码
Alter user 用户名 identified by 新密码;
不希望某用户登录,而又不删除其用户,可将用户锁定
Alter user 用户名 account lock;
删除用户
drop user 用户名 cascade;
加上cascade将用户连同其创建的东西全部删除
角色管理
Oracle角色就是一组权限(权限的集合)
三种标准角色
1.connect(连接角色)
可以登录Oracle,不可以创建实体,不可以创建数据库结构。
2.resource(资源角色)
只可以创建实体,不可创建数据库结构。
3.dba(数据库管理员角色)
系统最高权限,只有dba才可以创建数据库结构。
普通用户:connect,resource权限
dba管理用户:授予dba权限
创建角色
create role 角色名;
create role manager;
为角色赋予权限
grant 权限 to 角色;
grant create table, create view to manager;
将角色赋予用户
grant 角色 to 用户;
grant manager to user01, user02;
收回角色/权限
revoke manager from zhu;
drop role manager;
权限
系统权限:执行特定的数据库动作,如创建表、创建索引、连接实例等。
对象(实体)权限:允许用户操纵一些特定的对象,如读取视图,可更新某些列、执行储存过程等。
系统权限
查询Oracle所有系统权限
Select * From system_privilege_map
常用权限
- create session 创建会话
- create sequence 创建序列
- create table 创建表
- create user 创建用户
- alter user 更改用户
- drop user 删除用户
- create view 创建视图
对象权限
查询Oracle所有对象权限
select * from table_privilege_map
常用权限
- select, update, insert, delete, all等
- //all包括所有权限
授予对象权限
GRANT object_priv | All[(columns)] On object TO {user|role|PUBLIC}
grant select, update, insert on scott.emp to manager2;
grant manager2 to user03
grant all on scott.emp to user04;
回收对象权限
REVOKE {privilege[,privilege...]|ALL} On object FROM {user|role|PUBLIC}
revoke all on scott.emp from user04;
数据类型
- varchar2(size):基本变长字符型数据。无默认值,最大为32767个字节。
- char(size):定长字符型,默认值为1,最大32767个字节。
- number(p,s):数字型。P是精度,最大38位,S是刻度范围,可在-84…127间取值。例如:NUMBER(5,2)可以用来存储表示-999.99…999.99间的数值。P、S可以在定义是省略,例如:NUMBER(5)、NUMBER等。
- binary_float:IEEE754格式浮点数,5个字节。
- binary_double:IEEE754格式浮点数,9个字节。
- DATE:基本日期和时间型数据。