以下是在實際開發,運維系統時可能用到的sql.不定期更新.
1.查詢已經刪除的表
select object_name,original_name,partition_name,type,ts_name,createtime,droptime from recyclebin;
2.還原已經刪除的表
flashback table 這裡寫表名 to before drop;
3.使用索引的like,當業務需要前後like模糊查詢時,可以參考這麼做.
-- like '%abcd%' 全表掃瞄; like '%abcd' 走索引; like 'abcd%' 不走索引(不過可以用reverse將字段反向.就可以使用第二種了.);
-- 這相當於like
select * from tablename t where
instr(t.colunm,'abcd')>0;
-- 這相當於not like
select * from tablename t where instr(t.colunm,'abcd')=0;
-- 還有一種可以切割字串.然後使用等於號.也是走索引的.
select * from tablename t where substr(t.colunm,length(t.colunm) -3) = 'abcd';
4.當乙個新的oracle資料庫.建立表空間.
均需要登入到dba帳號
5.建立乙個只能查詢的使用者.
-- 先建立乙個使用者,需要用dba的賬戶登入執行.
create user abcd_user identified byabcd_user;
-- 賦予登入相關許可權.
grant connect toabcd_user;
grant create synonym toabcd_user;
-- 所有表的查詢許可權賦予,把下面查詢出來的結果執行一遍.
select 'grant select on ' || owner || '.' || object_name || ' toabcd_user;' from dba_objects where owner in ('abc_user') and object_type = 'table';
-- 建立同義詞,操作同上.
select 'create or replace synonymabcd_user.' || object_name || ' for ' || owner || '.' || object_name || ';' from dba_objects where owner in ('abc
_user') and object_type = 'table';
常用sql記錄
一 修改字段預設值 alter table 表名 drop constraint 約束名字 說明 刪除表的字段的原有約束 alter table 表名 add constraint 約束名字 default 預設值 for 欄位名稱 說明 新增乙個表的字段的約束並指定預設值 二 修改欄位名 alte...
Oracle常用技巧記錄
當一段查詢sql執行特別慢的時候,需要對其進行優化,此時借助plsql developer工具,檢視sql的執行計畫,所有問題一目了然。這裡只是舉個簡單的例子,如何讀懂執行計畫,可以參考博文 1.1方式一 如何進入執行計畫的頁面?可以選中要執行的sql,然後單擊工具欄上的按鈕 如下圖 也可以選中要執...
Oracle常用SQl整理
檢視新執行sql select from v sqlarea t where t.first load time like 2011 11 04 11 order by t.first load time desc 1.檢視oracle資料庫表是否被鎖住 select a.b.sid,b.seria...