程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> ORACLE實際生產中小工具總結

ORACLE實際生產中小工具總結

編輯:Oracle教程

ORACLE實際生產中小工具總結


在日常的生產中,數據來源往往多種多樣,今天就說說excel中的額數據吧,因為現在好多開發語言支持將數據導出到excel,但是有些不標准的做法會導致產生無法識別的特殊字符,在數據庫中以?的形式存在,為我們數據的清洗帶來了一定的麻煩,當特殊字符出現在字符串中,對實際音響不大,但是當特殊字符出現在數字類型的字段後,便會影響到實際的生產了,此時如何找出特殊字符就會很困難,因為無法識別具體是什麼字符,所以我們就需要轉換一下思路,將標准的數據找出來,然後用總得數據集出去標准的數據集,剩下的就是包含特殊字符的數據集了,那麼如何找出標准的呢,好像也很難,那麼好像有一個函數,正則表達式能解決問題,哈哈,真的可以,果斷使用,具體的使用方法如下:select * from value_data p where p.line_num not in (select t.line_num from value_data t where REGEXP_LIKE(t.sale_num,'(^[+-]?\d{0,}\.?\d{0,}$)'))

在日常的生產中,也有時候因為設計不當或者操作不當,會導致數據庫的sessions死鎖,這時候數據庫就會等待,這時候數據庫session之間的爭用會嚴重影響實際的業務處理,所以必須快速准確的關閉死鎖的session,

select sess.sid,
sess.serial#,
lo.oracle_username,
lo.os_user_name,
ao.object_name,
lo.locked_mode
from v$locked_object lo,
dba_objects ao,
v$session sess
where ao.object_id = lo.object_id and lo.session_id = sess.sid;

alter system kill session '46,53';

通過以上兩個操作,就可以快速准確的將死鎖session關閉。

數據庫的分頁,這個不用說,大家應該都會用到的,記錄一下吧select * from(select rownum no ,t.line_num,t.ven_cust from value_data t) where no>1 and no <11

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved