PLSQL的兩個屬性類型%type 和%rowtype

來源:互聯網
上載者:User

標籤:方式   data-   highlight   font   類型   col   lin   個數   特性   

1.%TYPE

定義一個變數,其資料類型與已經定義的某個資料變數的類型相同,或者與資料庫表的某個列的資料類型相同,這時可以使用%TYPE。 
說白了就是將查詢到的某個列的結果要賦給 一個變數這會就用到了 %TYPE。

---查詢員工號為7369的補助declareempcom emp.comm%type ;  --聲明一個empcom變數,資料類型類型為emp表的comm列類型begin   select comm into empcom from emp where empno=7369 ;---將查到的comm類型的結果值放到 empcom變數裡    dbms_output.put_line(‘員工補助是‘||empcom) ;--- ||是串連字元end ;

declare 聲明部分定義了一個empcom 變數它的類型是 emp的comm屬性,意味著 後邊的程式將列值取出賦值給empcom 變數。 
select comm into empcom from emp where empno=7369 ; 
select … into… 表示將 查詢結果 賦給 empcom 。

2.%rowtype

PL/SQL 提供%ROWTYPE操作符, 返回一個記錄類型, 其資料類型和資料庫表的資料結構相一致。 

使用方式:變數名.列名
使用%ROWTYPE特性的優點在於: 
所引用的資料庫中列的個數和資料類型可以不必知道; 
所引用的資料庫中列的個數和資料類型可以即時改變。 
取出一個列的記錄可以存到使用rowtype 定義的變數裡。

---查詢king員工的所有資訊。 %rowtype 使用declareempmsg emp%rowtype ; -- 定義一個empmsg變數 存一行的資料begin  select * into empmsg from emp where ename =‘KING‘ ; dbms_output.put_line(empmsg.ename||‘:‘||empmsg.sal) ; ---輸出end ; 

  

 

PLSQL的兩個屬性類型%type 和%rowtype

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.