Time of Update: 2017-01-18
本人最近在使用oracle的rownum實現分頁顯示的時候,對rownum做了進一步的分析和研究。現歸納如下,希望能給大家帶來收穫。 對於rownum來說它是oracle系統順序分配為從查詢返回的行的編號,返回的第一行分配的是1,第二行是2,依此類推,這個偽欄位可以用於限制查詢返回的總行數,而且rownum不能以任何錶的名稱作為首碼。 舉例說明: 例如表:student(學生)表,表結構為: 複製代碼 代碼如下: ID char(6) --學號 name VARCHAR2(
Time of Update: 2017-01-18
聯合數組以前被稱為PL/SQL表。在表中不能使用聯合數組,只能將它們用作程式設計的結構體。只能在PL/SQL中訪問聯合數組。 注意到聯合數組帶來的一些關鍵問題是非常重要的。這些問題使我們介紹它們的用法時,需要採取一些特別的方法。這些問題包括: 聯合數組不需要初始化,也沒有建構函式文法。在對它們進行賦值以前,也不需要專門為其分配儲存空間,也就不需要使用集合API的EXTEND方法。 在ORACLE 10G中,以及在ORACLE 10G以前的版本中,都可以使用數字索引聯合數組。另外,在ORACLE
Time of Update: 2017-01-18
1、在報表頁面配置相應的位置加入文字框,一般為Download 右鍵用PL/SQL編輯器編寫成超連結,加入以下內容: 複製代碼 代碼如下: function B_13FormatTrigger return boolean is begin IF upper(:P_ACTION) != 'DOWNLOAD' THEN return (FALSE); ELSE srw.set_hyperlink(EXP_FILE.linkto); return (TRUE); END IF; end;
Time of Update: 2017-01-18
本文介紹了C#串連Oracle資料庫的過程。通過instant client和ODP.net中的Oracle.DataAccess.dll,我們就可以方便的部署.net應用程式或者網站,而不需要安裝Oracle用戶端。接下來我們就介紹這一過程。 1. ODAC的安裝 在oracle的官方網站上下載與你安裝的oracle對應版本的ODAC。 下載地址:ODAC Download 下載好後解壓安裝,安裝時不用安裝全部的組件。主要安裝以下組件: Oracle Instant Client
Time of Update: 2017-01-18
Linux系統下Oracle經常會出現亂碼,不管是安裝還是使用過程中都會出現中文亂碼。這是因為Linux系統中缺少了某些字型,只要安裝了這些字型,就能解決這個問題了。解決辦法一:方法如下: 把中文字型放到Oracle安裝包的 jdk/jre/lib/font/fallback下就可以了。 對於使用Oracle圖形化工具時出現的亂碼問題: 把中文字型複製到 ~/.font下,然後執行:複製代碼 代碼如下:$ sudo mkfontscale $ sudo
Time of Update: 2017-01-18
1.基本概念 兩種功能:完成由資料庫的完整性條件約束難以完成的複雜商務規則的約束;監視資料庫的各種操作,實現審計功能。 觸發器分為:DML觸發器(對錶或視圖執行DML操作時觸發),INSTEAD OF觸發器(只定義在視圖上,替代實際的動作陳述式),系統觸發器(對資料庫系統進行操作時觸發,如DDL語句、啟動或關閉資料庫等) 觸發事件: 上述觸發器中括弧內容都是觸發事件。 觸發條件: WHEN子句 觸發對象:包括表、視圖、模式、資料庫。 觸發操作:觸發器自動執行的程式。
Time of Update: 2017-01-18
下午在學習oracle 10g r2 concepts在這留一筆。Oracle對資料庫資料檔案(datafile)中的儲存空間進行管理的單位是資料區塊(data block)。資料區塊是資料庫中最小的(邏輯)資料單位。與資料區塊對應的,所有資料在作業系統級的最小實體儲存體單位是位元組(byte)。每種作業系統都有一個被稱為塊容量(block size)的參數。Oracle每次擷取資料時,總是訪問整數個(Oracle)資料區塊,而不是按照作業系統塊的容量訪問資料。資料庫中標準的資料區塊(data
Time of Update: 2017-01-18
plsql串連oracle資料庫報ora 12154錯誤 今天遇到一個問題,使用sqlplus能夠串連到遠端資料庫,但是使用plsql卻串連不上,報錯"ORA-12154: TNS: 無法解析指定的串連標識符" 解決方案如下: 1.先檢查伺服器端的監聽服務是否開啟,如果沒有開啟請啟動其監聽 用戶端:tnsping <tns_name> 伺服器Linux下: #>lsnrctl status 查看監聽狀態 #>lsnrctl start 啟動監聽 2.通過Sql
Time of Update: 2017-01-18
在Oracle中刪除使用者時提示:ORACLE無法刪除當前串連使用者可以用以下語句 Sql代碼 SQL> 複製代碼 代碼如下:select username,sid,serial# from v$session; USERNAME SID SERIAL# ------------------------------ ---------- ---------- 1 1 2 1 3 1 4 1 5 1 6 1 7 1 SYS 8 3 A 9 4 已選擇9行。 SQL> 複製代碼
Time of Update: 2017-01-18
注意點: 1.如果在PL/SQL 等工具裡開啟的話,直接修改下面的代碼中[斜體加粗部分]執行 2.確保路徑存在,比如【D:\oracle\oradata\Oracle9i\】也就是你要儲存檔案的路徑存在 /*分為四步 */ /*第1步:建立暫存資料表空間 */ 複製代碼 代碼如下: create temporary tablespace user_temp tempfile 'D:\oracle\oradata\Oracle9i\user_temp.dbf' size 50m
Time of Update: 2017-01-18
有時不清楚一些參數的所有允許設定的值,可以由以下兩個方法獲得 1.直接輸入錯的值,讓error來提示 複製代碼 代碼如下: SQL> alter system set "_db_block_cache_protect"=what scope=spfile; alter system set "_db_block_cache_protect"=what scope=spfile * ERROR at line 1: ORA-00096: invalid value WHAT for
Time of Update: 2017-01-18
1.靜態SQLSQL與動態SQL Oracle編譯PL/SQL程式塊分為兩個種:其一為前期聯編(early binding),即SQL語句在程式編譯期間就已經確定,大多數的編譯情況屬於這種類型;另外一種是後期聯編(late
Time of Update: 2017-01-18
複製代碼 代碼如下: -- Created on 2010/11/04 by WANGNAN declare -- Local variables here i integer; TYPE t_table IS TABLE OF VARCHAR2(10 ) INDEX BY VARCHAR2 (2); v_t_table t_table; TYPE t_pg3 IS TABLE OF asis.PG3_AGENTCD_CONVERSION% ROWTYPE; v_pg3_table t_pg3;
Time of Update: 2017-01-19
預存程序和儲存函數指儲存在資料庫中供所有使用者程式調用的子程式叫預存程序、儲存函數。預存程序沒有傳回值。儲存函數有傳回值 建立預存程序 用CREATE PROCEDURE命令建立預存程序和儲存函數。 文法:create [or replace] PROCEDURE過程名(參數列表) AS
Time of Update: 2017-01-19
Oracle 11g伺服器與用戶端的完全卸載方式與前些版本有了改變: 一、卸載前準備: 開始->設定->控制台->管理工具->服務 停止所有Oracle服務。 二、批處理卸載: 運行H:\app\Administrator\product\11.2.0\dbhome_1\deinstall的deinstall.bat批次檔卸載,全程代碼如下: (用戶端卸載與此類似,螢幕過程中都會有詢問,一路斷行符號或y選擇預設即可。) Checking for required
Time of Update: 2017-01-19
查詢及重複資料刪除記錄的SQL語句1、尋找表中多餘的重複記錄,重複記錄是根據單個欄位(Id)來判斷select * from 表 where Id in (select Id from 表 group by Id having count(Id) > 1)2、刪除表中多餘的重複記錄,重複記錄是根據單個欄位(Id)來判斷,只留有rowid最小的記錄DELETE from 表 WHERE (id) IN ( SELECT id FROM 表 GROUP BY id HAVING
Time of Update: 2017-01-19
oracle wm_concat(column)函數使我們經常會使用到的,下面就教您如何使用oracle wm_concat(column)函數實現欄位合并,如果您對oracle wm_concat(column)函數使用方面感興趣的話,不妨一看。shopping:-----------------------------------------u_id goods
Time of Update: 2017-01-19
row_number()over(partition by col1 order by col2)表示根據col1分組,在分組內部根據col2排序,而此Function Compute的值就表示每組內部排序後的順序編號(組內連續的唯一的)。 與rownum的區別在於:使用rownum進行排序的時候是先對結果集加入偽劣rownum然後再進行排序,而此函數在包含排序從句後是先排序再計算行號碼。 row_number()和rownum差不多,功能更強一點(可以在各個分組內從1開始排序)。 rank()
Time of Update: 2017-01-19
表可以按range、hash、list分區,表分區後,其上的索引和普通表上的索引有所不同,oracle對於分區表上的索引分為2類,即局部索引和全域索引,下面分別對這2種索引的特點和局限性做個總結。局部索引local
Time of Update: 2017-01-19
import java.io.BufferedOutputStream;import java.io.ByteArrayInputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.io.Reader;import java.sql.Clob;import java.sql.Connection;import java.sql.ResultSet;