今天开始,复习oracle基础。主要是以前培训的时候的文档作为结构来梳理知识点,主要目的是把Oracle基础打的扎实点。后面要转做后台开发,或者工作中需要用到数据库知识时也不至于临时抱佛脚。
一直以来我在公司主要是做前台开发。由于前台框架没有支持的持久化层,导致前台开发的Oracle基础因为生疏而逐渐废弃。Orcale就像一样本领因为太久没有用而武功尽弃。终于有一天客户让我写个脚本,给某个角色类型的角色批量赋权某个权限id时,我一脸懵逼。后面找人帮我写了个sql,才搪塞过去了。从此在心里留了个疙瘩:我要补补我的Oracel基础了。
后面会从
1.Oracle--DCL
2.Oracle--DDL
3.Oracle--DML
4.Oracle--常用函数
5.Oracle--视图
6.Oracle--同义词
7.Oracle--索引
8.Oracle--序列
9.Oracle--分区表
10.Oracle--游标
11.Oracle--存储过程和存储函数
12.Oracle--触发器
13.Oracle--闪回
14.Oracle--备份与恢复
15.Oracle--性能优化
以上只是大概的结果。会根据工作的情况,有所侧重,有的知识点,可能就一句话带过。凡是以使用为目的。i
以这里为起点,继续努力。新的一年要以成功转型后台,打牢技术基础为重点。
INSERT INTO SEC.SEC_ROLE_GRANT NOLOGGING
SELECT SEC.SEC_ROLE_GRANT$SEQ.NEXTVAL ROLE_GRANT_ID,
C.ROLE_ID
,a.ent_class_id PRIV_ID
,A.ENT_ID ENT_ID
,'D' ENT_TYPE
,'赋权给所有ROLE_ID' NOTES
,1 STATE
,'0' DONE_CODE
,SYSDATE CREATE_DATE
,SYSDATE DONE_DATE
,SYSDATE VALID_DATE
,TO_DATE('20991231', 'yyyymmdd') EXPIRE_DATE
,'0' OP_ID
,'0' ORG_ID
,NULL LOWER_LIMIT
,NULL UPPER_LIMIT
,NULL EXT1
,NULL EXT2
,SYSDATE ENT_VALID_DATE
,TO_DATE('20991231', 'yyyymmdd') ENT_EXPIRE_DATE
FROM SEC.SEC_ENTITY A, sec.sec_role C
WHERE A.ENT_ID IN ('22222222')
AND C.role_type=1
AND NOT EXISTS (SELECT 1
FROM SEC.SEC_ROLE_GRANT B
WHERE B.ENT_ID = A.ENT_ID
AND B.ROLE_ID = C.ROLE_ID)