一、数据字典(视图)
静态:USER_* 存储了当前用户所拥有的对象的信息。
ALL_* 存储了当前用户可以访问的所有的对象信息,不一定是自己的 。
DBA_* 存储了数据库所有的对象信息,具有管理员(DBA)权限才可以访问 。
动态:V$ 当前..... 需要DBA权限
USER_TABLES 所有的表
_VIEWS 所有的视图
_SEQUENCES 所有的序列
_INDEX 所有的索引
_CONSTRAINTS 所有的约束
_RECYCLEBIN 回收站
SELECT * FROM USER_TABLES;
V$SESSION 当前有谁连接数据库
会话:一个用户从登录到退出
terminal 主机名
SELECT DISTINCT TERMINAL FROM v$SESSION;
二、动态SQL语句--一般用于DDL语句的批量执行语句
1、语法:EXECUTE IMMEDIATE '执行的语句'[USING|INTO]
using 给动态语句传值
into 从动态语句中取值
注:没加 AUTHID CURRENT_USER 表示定义者权限 以定义者身份执行
加上 AUTHID CURRENT_USER 表示调用者权限 以调用者身份执行
--创建一个存过 批量建表
CREATE OR REPLACE PROCEDURE PRO_C(V_E VARCHAR2,V1 NUMBER,V2 NUMBER)
AUTHID CURRENT_USER