Oracle PL/SQL中如何使用%TYPE和%ROWTYPE(轉帖)

Oracle PL/SQL中如何使用%TYPE和%ROWTYPE  1. 使用%TYPE  在許多情況下,PL/SQL變數可以用來儲存在資料庫表中的資料。在這種情況下,變數應該擁有與表列相同的類型。例如,students表的first_name列的類型為VARCHAR2(20),我們可以按照下述方式聲明一個變數:  DECLARE   v_FirstName

建立與Oracle資料庫伺服器串連的兩種串連模式(專用伺服器與共用伺服器) .轉帖

    在建立Oracle資料庫的時候,應該會在資料庫建立助手嚮導上面看到這麼一個選項,就是資料庫的串連模式採用什麼方式。在Oracle9i或者10g中,可以看到有2種串連模式,一種叫做專用伺服器串連(dedicated server) ,另外一種叫做共用伺服器串連(shared server)。下面我們來分類說一下這兩種串連方式的不同點。       

Oracle REF Cursor 用法(轉帖)

 Oracle 系列:REF Cursor 在上文  Oracle 系列:Cursor  (參見:http://blog.csdn.net/qfs_v/archive/2008/05/06/2404794.aspx)中  提到個思考:怎樣讓遊標作為參數傳遞? 解決這個問題就需要用到 REF Cursor 。 1,什麼是 REF遊標 ? 動態關連接果集的臨時對象。即在啟動並執行時候動態決定執行查詢。 2,REF 遊標 有什麼作用? 實現在程式間傳遞結果集的功能,利用REF

解決SqlServer 資料庫 向Oracle 資料庫導資料表結構 有感

昨天用Sqlserver 2005把資料表直接匯入到Oracle中,還在為Sqserver2005得這一功能叫好,但當我用程式串連Oracle庫時問題就來了,提示找不到表名。我的表名是大小寫結合的。因為Oracle是嚴格區分大小寫,要正常運行,表名和列名都得加雙引號。這可把我弄暈了。後來用Enterprise Manager

Oracle 通過 Ado.net 調用Update 方法

昨天剛把資料庫從SQLServer轉到Oracle,今天使用時又出現了問題,插入資料沒問題,問題出在更新上,更新時提示: ORA-01036: 非法的變數名/編號關於這個提示的解答主要時以下幾種:1、Oracle的更新不能出現Parameters順序跟傳來的參數順序不一直的問題2、欄位名太長,有的地方說是要小於32個字元,但我使用,它還要比32小,大家只能盡量控制欄位名的長度(引用:http://www.readbook8.com/dev/5201/4342318.htm)3、雖然在Sql

自己總結的常用ORACLE Text 文本檢索

ORACLE Text 文本檢索:(先要建立CONTEXT或CTXCAT索引,然後如下)(還可以在from前加,SCORE(10)來觀察檢索到的項目的得分)1.單詞的精確匹配檢索select cbid,title(列名) from emergency(表名) where contains(title,'關於')>0; 是從title中檢索含詞“關於”的cbid和title欄位。2.多個單詞精確匹配select cbid,title form emergency where

oracle的substr函數的用法

oracle的substr函數的用法 取得字串中指定起始位置和長度的字串   substr( string, start_position, [ length ] ) 如:     substr('This is a test', 6, 2)     would return 'is'     substr('This is a test', 6)     would return 'is a test'     substr('TechOnTheNet', -3, 3)     would r

一次性編譯ORACLE中所有對象

這個預存程序不是我寫的,但是很好使,特別適合剛匯入對象看到滿螢幕的叉。CREATE OR REPLACE  PROCEDURE "USER"."RECOMPILE_SCHEMA"  IS    v_type user_objects.object_type%TYPE;    v_name user_objects.object_name%TYPE;    v_stat user_objects.status%TYPE;    CURSOR c_obj IS        SELECT base 

Oracle 數組在過程中的使用

最近在一個過程用到一個數組,來儲存一個系列數值。   Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->1 declare type ln_mon_plan_value_varray is varray(20) of NUMBER(20,5);2 ln_mon_plan_value ln_mon_plan_value_varray;3

Oracle 手動重新整理物化視圖的問題

    最近項目需要在單據成功提交後,手動重新整理某一個物化視圖。    起初方案是,在表的After Update觸發器調用dbms_refresh.refresh('物化視圖名稱');測試發現報錯。報錯原因:通過dbms_refresh.refresh重新整理物化視圖時,預設有隱式的Commit事務提交。推測其Commit事務和觸發器隱式Commit事務提交衝突,故報錯。後修改為前台調用重新整理時,測試正常。PB前台測試代碼如下:DECLARE dbms_refresh Procedure

[匯入]關於:Oracle 匯入匯出詳解

E:\exp help="y" 通過輸入 EXP 命令和使用者名稱/口令,您可以在使用者 / 口令之後的命令:執行個體: EXP SCOTT/TIGER或者,您也可以通過輸入跟有各種參數的 EXP 命令來控制“匯出”的運行方式。要指定參數,您可以使用關鍵字:格式: EXP KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)執行個體: EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR)或

ASP.NET調用oracle實現快速分頁

ASP.NET調用oracle預存程序實現快速分頁原貼:http://dev.csdn.net/article/82/82808.shtm《使用 ADO.NET 訪問 Oracle 9i 預存程序》見下面的介紹(如果對這個不怎麼懂的,還是先看看下面文章)http://www.microsoft.com/china/MSDN/library/data/dataAccess/DMSDNorsps.mspx包定義: create or replace package MaterialManage

Oracle遊標使用的簡單介紹

Oracle遊標的使用下面的例子完整說明遊標的聲明,開啟,提取關閉操作以及遊標參數的傳遞方法. DeclareDeptRec dept%ROWTYPE;dept_name dept.dname@TYPE;dept_loc dept.loc%TYPE;Cursor c1 IsSelect dname,loc from dept    where deptno<=30;Cursor c2(dept_no number Default 10) is select dname,loc from d

ORACLE Procedure 預存程序文法

子程式和程式包總結:子程式是命名的PL/SQL塊,可帶參數並可在需要時隨時調用。PL/SQL有兩種類型的子程式,即過程和函數。過程用於執行特定的任務,函數用於執行任務並傳回值。程式包是對相互關聯類型、變數、常量、遊標、異常、過程和函數的封裝。程式包由包規範和包主體兩部分組成。包規範是包的介面,包含公用對象及其類型。包主體實現包規範中的遊標和子程式,包主體中的聲明僅限於在包內使用。程式包中遊標的定義分為遊標規範和遊標主體兩部分。文法及樣本:1、預存程序建立預存程序的文法:CREATE [OR

oracle預存程序 學習筆記

串連字元:||賦值運算:":="如: l_name :='sky';判斷是否相等:"="如: if 1=1 then...變數綁定:":"如: if :P_NAME ='sky' then...exists是否存在not exists是否不存在%type 匹配欄位類型%rowtype 匹配記錄類型%type當表類型改變的時候,不需要手動修改PL/SQL塊中調用的該類型例如:V_GP_ID SC_BALANCE_DAILY.Gp_Id%TYPE;sqlcode

Oracle 兩個表之間的資料更新

  Oracle中,如果跨兩個表進行更新,Sql語句寫成這樣Update Table a set a.ID=Table2.ID where a.Name = Table2.Name  Oracle 不會通過。查了資料,Sql語句需要這樣寫才行Update Table a set a.ID=(select b.ID from Table2 b where b.Name = a.Name ) where exist (select 1 from Table2

Oracle找回資料

1、 用dbms_flashback找回資料 首先必須要有使用dbms_flashback包的權力,可以在sys下通過Grant execute on dbms_flashback to user;授權 Sql>execute dbms_flashback.enable_at_time(date);  //開啟快照模式Sql>進行回複操作,此時查詢的表都是date所指時間的表,可以通過遊標開啟表,或把該表中的資料存入暫存資料表Sql>execute

Oracle的資料庫連結問題

Oracle中的資料庫連結可以實現跨庫查詢,但使用的時候常常出現問題,經常莫名其妙的測試不通。其實注意以下幾個問題可以避免很多這樣的問題。1 連結最好設定成public公用連結,否則使用者A不能使用使用者B的連結。大家公用一個連結挺好的,不然給不同的應用還要建不同的連結。2  串連串名一定要設成資料庫伺服器自己的tnsname.ora中的。有時候在A機中開OEM連B機的ORACLE,B要資料庫連結到C,建連結的時候習慣性的填A的串連串名,結果怎麼也測不通。:(

Oracle匯入字元集的問題

問題發現6月24日下午,發現A地用戶端程式插入資料出錯,經查實,原因為表B的約束變成了“?”,因為裡面有中文字元,但是表裡的資料沒有亂碼。當天下午在伺服器上遠處控制,又讓匯出了一份,並匯入。仍然不行,按照網上的方法,改匯出dmp的2、3位元組為03

oracle在歸檔模式下正常工作設定

oracle資料庫要在歸檔模式下正常工作,要進行如下設定:一、設定資料庫為歸檔模式如果資料庫歸檔模式沒有開啟,查詢顯示如下資訊(非歸檔模式):1、查詢當前資料庫的模式SQL> archive log list;資料庫記錄模式 非存檔模式自動封存 禁用存檔終點 D:oracleora81RDBMS最早的概要資訊日誌序列 64當前日誌序列 662、shutdown

總頁數: 1509 1 .... 206 207 208 209 210 .... 1509 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.