Time of Update: 2017-01-18
1、telnet到遠端資料庫伺服器 CMD>telnet 遠端資料庫的IP 2、切換到資料庫的使用者 DQXXDBS01:/> su - oracle 3、用超級使用者進入資料庫 $ sqlplus "/as sysdba" 4、查看參數,是否可以用job(可以用job進行自動的收集Statpack Report的資料) SQL> show parameter job_queue_processes 5、該參數可以收集作業系統的資訊 SQL> show
Time of Update: 2017-01-18
在開發過程中可能會聲明一個含有某張表不具備欄位的遊標,來解決特殊問題,本文將詳細介紹這類問題,需要瞭解更多的朋友可以參考下其中,data.*是一張表,然後把其他表中的欄位也加到sal_data的遊標中 Sql代碼 複製代碼 代碼如下: cursor sal_data(cp_center_temp_id varchar2) is select data.*, post.id emp_post_id, doc.Salary_Tax_Bd sa_tax_bd,
Time of Update: 2017-01-18
在開發過程中,經常會遇到一些測試,這時候就會想瞭解測試的過程,然後再根據過程分析代碼錯在哪裡,這種情況下,就需要用到自訂異常,需要瞭解的朋友可以參考本文先聲明一個異常 Java代碼 biz_exception exception; 再拋出來 Sql代碼 複製代碼 代碼如下: p_RETCODE := '-1'; p_retInfo := '已產生工資+社保類型賬單,請不要重複產生。'; raise biz_exception; 這樣預存程序就走到最後的抓取異常地方 Sql代碼 複製代碼
Time of Update: 2017-01-18
在開發過程中,可能會用到oracle sequence語句,本文以oracle sequence語句如何重設進行介紹,需要的朋友可以參考下Oracle重設sequence語句1 Sql代碼 複製代碼 代碼如下: DECLARE n NUMBER(10 ); tsql VARCHAR2(100 ); p_seqName varchar2(20 ); BEGIN p_seqName := 'SEQ_RUN_ID'; EXECUTE IMMEDIATE 'SELECT ' || p_seqName |
Time of Update: 2017-01-18
在開發過程中可能會用到oracle table demo 動作陳述式,本文將以此進行介紹,需要的朋友可以參考下Sql代碼 複製代碼 代碼如下: -- Created on 2010/07/29 by WANGNAN declare -- Local variables here i1 VARCHAR2( 20) := '1' ; i2 VARCHAR2( 20) := '1' ; i3 VARCHAR2( 20) := '2' ; i4 VARCHAR2( 20) := '3' ; i5
Time of Update: 2017-01-18
在開發應用中如何擷取oracle的最大日期呢?本文將提供這樣一個擷取方法,需要的朋友可以參考下Sql代碼 複製代碼 代碼如下: -- Created on 2010/06/08 by NAN declare -- Local variables here TYPE t_test IS TABLE OF DATE INDEX BY BINARY_INTEGER; v_test t_test; v_date DATE; BEGIN -- Test statements here v_test(1)
Time of Update: 2017-01-18
一、環境說明 來源資料庫: IP地址:192.168.137.100 sid:catalog 使用者名稱:rman 密碼:rman 目標資料庫: IP地址:192.168.137.101 sid:orcl 使用者名稱:rman 密碼:rman 二、在目標資料庫上建立到來源資料庫的tnsname 用oracle使用者登入目標資料庫,修改 $ORACLE_HOME/network/admin/tnsnames.ora檔案,增加如下內容 複製代碼 代碼如下: catalog =
Time of Update: 2017-01-18
一。查詢篇 1.查詢oracle資料表空間的使用方式 select b.file_id 檔案ID, b.tablespace_name 資料表空間, b.file_name 物理檔案名稱, b.bytes 總位元組數, (b.bytes-sum(nvl(a.bytes,0))) 已使用, sum(nvl(a.bytes,0)) 剩餘, sum(nvl(a.bytes,0))/(b.bytes)*100 剩餘百分比 from
Time of Update: 2017-01-18
公司需要處理一些報表,需要使用百分率,保留2位小數,只用round和trunc函數都可以實現(round(_data,2) ),只是格式不是很工整,對格式要求不嚴謹的情況下使用round即可. 個人認為比較方便的一種 select decode(n_jg,0,'0.00',trim(to_char(n_jg,'9999999.99'))) from tbl 如果只是檢索,可是使用: 1、select trunc(CUR_SUM,2) from data_record;
Time of Update: 2017-01-18
Sql代碼 --擷取當前的SCN 複製代碼 代碼如下: select dbms_flashback.get_system_change_number scn1, timestamp_to_scn(sysdate) scn2 from dual; --將SCN轉換成功時間 複製代碼 代碼如下: select to_char(scn_to_timestamp(34607271), 'yyyy-mm-dd hh24:mi:ss') chr,
Time of Update: 2017-01-18
Sql代碼 複製代碼 代碼如下: CREATE TABLE test(a VARCHAR2( 20),b VARCHAR2 (20),c NUMBER,d VARCHAR2 (20)) INSERT INTO test VALUES( 'a1','b1' ,1, 't'); INSERT INTO test VALUES( 'a3','b3' ,3, 't'); INSERT INTO test VALUES( 'a4','b4' ,4, 't'); INSERT INTO test
Time of Update: 2017-01-18
假如Oracle中有兩個使用者A和B,那麼如果A要訪問B擁有的表,語句應該是: 複製代碼 代碼如下: SELECT * FROM B.TABLENAME。 我要問的是,能否通過修改Oracle的設定,將A訪問B擁有表的語也變為跟B使用者登入一樣的語句:SELECT * FROM TABLENAME? 複製代碼 代碼如下: create synonym tablename for B.TABLENAME; 除了一樓的建立同義字外,還要授予A使用者訪問改同意詞的許可權. 複製代碼 代碼如下:
Time of Update: 2017-01-18
什麼是CPU/PSUOracle CPU的全稱是Critical Patch Update, Oracle對於其產品每個季度發行一次安全補丁包,通常是為了修複產品中的安全隱患。Oracle PSU的全稱是Patch Set Update,Oracle對於其產品每個季度發行一次的補丁包,包含了bug的修複。Oracle選取被使用者下載數量多,且被驗證過具有較低風險的補丁放入到每個季度的PSU中。在每個PSU中不但包含Bug的修複而且還包含了最新的CPU。PSU通常隨CPU一起發布。CPU是累積的(
Time of Update: 2017-01-18
dbms_metadata.get_ddl()用於擷取對象的DDL,其具體用法如下。注意:在sqlplus裡,為了更好的展示DDL,需要設定如下參數:複製代碼 代碼如下:set line 200set pagesize 0set long 99999set feedback offset echo off1)獲得表、索引、視圖、預存程序、函數的DDL複製代碼 代碼如下:select dbms_metadata.get_ddl('TABLE','TABLE_NAME','TABLE_OWNER')
Time of Update: 2017-01-18
用遊標實現,我覺得絕對這種方法比較安全的。--首先定一個遊標把需要用到的一些資料存放到遊標中:複製代碼 代碼如下:declare CURSOR D_CURSOR_CUS_INFO IS select t3.id_ as
Time of Update: 2017-01-18
關於Oracle中的不等號: 在Oracle中, <> != ~= ^= 都是不等號的意思。都可以使用。 但是奇怪是的, 我想拿出price不是180000的商品時:(price是Number類型的) SELECT id, name FROM product where price<> 180000; 執行這個語句時,priceis null 的記錄不出來。也就是拿不到price是null的商品。必須使用: SELECT id,
Time of Update: 2017-01-18
查詢及重複資料刪除記錄的SQL語句1、尋找表中多餘的重複記錄,重複記錄是根據單個欄位(peopleId)來判斷select * from peoplewhere peopleId in (select peopleId from people group by peopleId having count(peopleId) >
Time of Update: 2017-01-18
開發中大家應該都做過什麼類似部門管理這樣的功能,一般情況下一個部門下面還有下一級部門(子部門),這個層級就類似一棵樹。這種情況下一般會把父級部門和子級部門分成2個或者多個表,這種算是比較常規的做法;有時可能為了資料表管理的方便 就把所有的部門放在一張表裡並加上一個欄位標識部門之間的隸屬關係,這樣子看起來有點奇怪,但湊合用用還是Ok的。下面我跟大家分享下我的心得,也就是基於這種設計怎麼做數形圖,簡單的做法就是查詢出一個list集合就可以,要怎麼辦呢先來看下我的資料表
Time of Update: 2017-01-18
重裝了筆記本上的oracle,安裝完成後,可以正常使用OEM控制台,但是登出後重新登入或者重啟系統後登入,或者筆記本使用網路環境發生了變化,都有可能遇到問題。這些遇到問題的解決辦法使用過,但是很久沒折騰就忘記了,今天把這些問題和解決方案記錄在此。 1、網路環境變化導致無法啟動 這個問題的現象是無法啟動OEM。使用命令列如下: 複製代碼 代碼如下: C:/Users/Administrator>set ORACLE_SID=TEST
Time of Update: 2017-01-18
oracle佔用cpu過高怎麼處理,本文將介紹有關oracle進程CPU佔用率過高的問題,需要瞭解跟多的朋友可以參考下1:首先使用TOP命令傳到佔用CPU高的SPID號 PID USERNAME THR PRI NICE SIZE RES STATE TIME CPU COMMAND 3575 oracle 1 12 0 0K 0K run 748.6H 24.98% oracle 3571 oracle 1 22 0 0K 0K sleep 706.2H 22.84% oracle