Time of Update: 2017-01-13
用法介紹REPLACE(char, search_string [, replacement_string ] )char : 等待替換的字串search_string : 搜尋需要替換的字串replacement_string : 替換字串如果replacement_string預設或者為null,那麼所有char中出現的search_string 都將被移除如果search_string為null,那麼結果就是char 代碼如下複製代碼
Time of Update: 2017-01-13
用法1.TRUNC(for dates)日期操作TRUNC函數為指定元素而截去的日期值。其具體的文法格式如下:TRUNC(date[,fmt])其中:date 一個日期值fmt 日期格式,該日期將由指定的元素格式所截去。忽略它則由最近的日期截去下面是該函數的使用方式: 代碼如下複製代碼 TRUNC(TO_DATE('24-Nov-1999 08:00 pm'),'dd-mon-yyyy hh:mi am')='24-Nov-1999 12:00:00 am'TRUNC(TO_
Time of Update: 2017-01-13
代碼如下複製代碼 set linesize 3000; set heading off; set feedback off; set term off; set pagesize 0; set trimspool on; spool a.csv; select c1_name||’,'||c2_name from dual; select c1||’,'||c2 from tbtest spool off; 匯入csv檔案(如果要匯入資料我們需要注意:
Time of Update: 2017-01-13
如在ms sqlserver 用此語句: 代碼如下複製代碼 select top 2 * from test01 Oracle的語句: 代碼如下複製代碼 select * from (select rownum r ,* from test) ttwhere tt.r > 50 and tt.r <= 100; (最好用PLSQL遊標來解決)DB2中: 代碼如下複製代碼 select * from payment
Time of Update: 2017-01-13
AMERICAN_AMERICA.WE8ISO8859P1,這個字元編碼是西歐字元編碼,對應於.Net的就是iso-8859-1字元編碼,所以只需要改到系統的預設字元編碼就行了.解決方案:(1) 伺服器端重新安裝ORACLE 在重新安裝ORACLE 時選擇與原卸出資料一致的字元集(本例為US7ASCII)。 載入原卸出的資料。 這種情況僅僅使用於空庫和具有同一種字元集的資料。(2)寫一個函數: 代碼如下複製代碼 /**//// <summary>
Time of Update: 2017-01-13
具體錯誤java.sql.SQLRecoverableException: Io 異常: The Network Adapter could not establish the connection at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:101) at
Time of Update: 2017-01-13
最常用的是方法一: 代碼如下複製代碼 select * from (select ROWNUM as rn, Src.* from tab Src) DataSet Where rn> 10 and rn< 20方法二:select * from (select ROWNUM as rn, Src.* from tab where rownum <= 150) where rn >= 100; 結果發現由於該語句會先產生rownum
Time of Update: 2017-01-13
查看“環境變數”的path中,增加了D:oracleora92bin為全域變數(如果你的Oracle安裝在D盤的話)。2.1.1
Time of Update: 2017-01-13
format為年時,精確到-----年為月時,精確到------年,月(不管哪年,只要是相同的月和哪天)為日時,精確到------年,月,日(不管哪年的哪月,只關心是哪天)1.TRUNC(for dates)TRUNC函數為指定元素而截去的日期值。其具體的文法格式如下:TRUNC(date[,fmt])其中:date 一個日期值fmt 日期格式,該日期將由指定的元素格式所截去。忽略它則由最近的日期截去下面是該函數的使用方式: 代碼如下複製代碼
Time of Update: 2017-01-13
使用dbca建立資料庫是,選擇asm磁碟,但是無法發現asm磁碟組因為安裝grid時,有兩個指令碼需要執行,其中一個指令碼是/u01/app/oraInventory/orainstRoot.sh ,會修改許可權的,我想到可能是許可權的問題。我這邊asmcmd可以查看到asm磁碟組[grid@rac22 ~]$ asmcmdASMCMD> lsDATA/DATA1/DATA2/網上看到如下說法:安裝好Grid
Time of Update: 2017-01-13
1.下面的語句用來查詢哪些對象被鎖: 代碼如下複製代碼 select object_name,machine,s.sid,s.serial#from v$locked_object l,dba_objects o ,v$session swhere l.object_id = o.object_id and l.session_id=s.sid; 2.下面的語句用來殺死一個進程: 代碼如下複製代碼 alter system kill session
Time of Update: 2017-01-13
在iBATIS架構中使用回調介面,同樣也可以實現資料的大量操作,減少對資料庫的訪問次數,提高效能。下面是一個使用iBATIS架構向Oracle資料庫批量插入資料的例子:批量插入資料方法實現: 代碼如下複製代碼 /** * ibatis批量插入資料 * @param recordList */public void insertRecordByList(final List<Record> recordList)
Time of Update: 2017-01-13
十進位轉換二進位 代碼如下複製代碼 CREATE OR REPLACE FUNCTION NUMBER_TO_BIT(V_NUM NUMBER) RETURN VARCHAR IS V_RTN VARCHAR(8);--注意返回列長度 V_N1 NUMBER; V_N2 NUMBER; BEGINV_N1 := V_NUM; LOOP
Time of Update: 2017-01-13
通過odu挖rman備份前和備份後的資料檔案,得知rman backup備份的過程,對絕大多數truncate的表的未經處理資料未正常備份(為什麼是絕大多數,我無法給出解釋),這裡也可以看出rman backup並非是真正意義上的完全物理上複製(和rman copy還是有區別,copy不能完全被取代)建立類比環境 代碼如下複製代碼 SQL> select * from v$version; BANNER --------------------
Time of Update: 2017-01-13
sqlplus/as sysdba-- 查看dbf存放位置 select * from dba_data_files; -- 查看檔案位置 SELECT * FROM dba_directories; -- 建立資料表空間 create tablespace bp_oracle logging datafile '/u02/oradata/devdb/bp_oracle.dbf' size 100m autoextend on next 50m maxsize
Time of Update: 2017-01-13
串聯更新使用名目: 代碼如下複製代碼 CREATE TABLE A001(ID INT PRIMARY KEY,NAME VARCHAR(20))CREATE TABLE A002(ID INT REFERENCES A001(ID)ON DELETE CASCADE ON UPDATE CASCADE,AGE TINYINT) 例1 代碼如下複製代碼 declare CURSOR D_CURSOR_CUS_INFO
Time of Update: 2017-01-13
最簡單快速的刪除下面要講到了涉及多表串聯刪除到資料量較大以及表間關係比較複雜時才有效率上的優勢,簡單的直接刪除來的更快 如上例中,直接刪除 代碼如下複製代碼 DELETE FROM "FG123"."ORDERCOMBINE" WHERE VIPForm =’1’;
Time of Update: 2017-01-13
系統許可權( Database System Privilege )可以讓使用者執行特定的命令集。例如,CREATE TABLE許可權允許使用者建立表,GRANT ANY PRIVILEGE 許可權允許使用者授予任何系統許可權。對象許可權( Database Object Privilege )可以讓使用者能夠對各個對象進行某些操作。例如DELETE許可權允許使用者刪除表或視圖的行,SELECT許可權允許使用者通過select從表、視圖、序列(sequences)或快照
Time of Update: 2017-01-13
今天在對錶建立視圖的時候,使用者提示 ORA-01031使用者權限不足,insufficient privileges 。使用system使用者對其分配dba等許可權,依然無法建立視圖。建立視圖 代碼如下複製代碼 create or replace view statsas select 'STAT...' || a.name name, b.value from v$statname a, v$mystat
Time of Update: 2017-01-13
1. 自動成長的資料類型處理 MYSQL有自動成長的資料類型,插入記錄時不用操作此欄位,會自動獲得資料值。 ORACLE沒有自動成長的資料類型,需要建立一個自動成長的序號,插入記錄時要把序號的下一個值賦於此欄位。CREATE SEQUENCE 序號的名稱 (最好是表名+序號標記) 代碼如下複製代碼 INCREMENT BY 1 START WITH 1MAXVALUE 99999 CYCLE NOCACHE; 其中最大的值按欄位的長度來定,