角色許可權資訊儲存操作過慢

2021-08-30 08:54:58 字數 338 閱讀 8383

最近處理乙個很久的以前的老專案的優化,其實本身的問題很簡單,就是原有的設計太無語了,儲存一次要10-20分鐘。優化對比測試時坑死人了。

問題:將插入資料庫的操作寫在迴圈裡,每執行一次插入就要連線一次資料庫,io耗時非常巨大;刪除原有角色許可權關聯表和許可權表的資訊時,居然分為4步,4步也沒問題,關鍵他把資料的查詢操作後面的條件竟然是in(a,b,c,...,z)這種寫法,速度慢了10倍,

解決:將所有的許可權資訊的插入操作寫到迴圈的外面,並用批量操作進行一次插入

用一條sql語句直接將兩個表的相關資訊刪除

角色許可權儲存過程

create or replace function super sp gettable tablename in varchar,userid in number return userstype.ref cursor assqlstr varchar2 500 str varchar2 200 ...

管理許可權和角色5 顯示角色資訊

顯示角色資訊 1 顯示所有角色 sql select from dba roles 2 顯示角色具有的系統許可權 sql select privilege,admin option from role sys privs where role 角色名 3 顯示角色具有的物件許可權 通過查詢資料字典檢...

Oracle學習操作(7)使用者 許可權 角色

一 oracle使用者 二 許可權 1.系統許可權 sys登陸建立c test使用者後,給使用者c test授權,並且帶有傳播性 sql create user c test identified by 123456 default tablespace users sql create user ...