日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

TYPE g_date_tbl_typ IS TABLE OF DATE INDEX BY VARCHAR2(1000);

發布時間:2023/12/16 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TYPE g_date_tbl_typ IS TABLE OF DATE INDEX BY VARCHAR2(1000); 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

定義固定長度的一維數組

type type_array is varray(10) of varchar2(20);1、varray(10)表示定義長度為10的數組2、varchar2(20)表示數組為字符型,且元素字符串長度不超過20

定義可變長度的一維數組

type type_array is table of varchar2(20) index by binary_integer; 1、table表示可變長度2、index by binary_integer 表示以符號整數為索引一維數組的初始化/*初始化為空數組*/var_array type_array := type_array();/*初始化為六個元素數組*/var_array type_array := type_array('ggs','jjh','wsb','csl','dd','bb'); /*直接對各個元素進行賦值*/var_array.extend(3);var_array(1) = '1';var_array(2) = '2';var_array(3) = '3';/*通過遍歷數組元素方式進行初始化操作*/for i in 1..var_array.count loopvar_array(i) = to_char(i);end loop;

1、oracle數組的索引從1開始,而不是從0開始2、count為數組的長度

定義多維數組
type type_array is table of Tbl_User % rowtype index by binary_integer;
說明:Tbl_User 為基礎表

多維數組的初始化select * bulk collect into var_array from t_user;說明:bulk collect 表示將批量查詢數據直接插入collection中,而不是通過cursur一條條插入多維數組的讀取方法for i in 1..var_array.count loopdbms_output.put_line(var_array(i).user_id); dbms_output.put_line(var_array(i).username);end loop;

Oracle調用函數返回的數組
方法一

declare aa Tbl_StrSplit := Tbl_StrSplit();beginaa := PKG_TCH_COURSE_INIT.Fn_GetTermDate('root', 2);dbms_output.put_line(aa(1));dbms_output.put_line(aa(2));end;方法二Select Fn_GetTermDate(P_SchoolKey, P_TermKey)Into Tbl_TermDateFrom dual;

強制修改已經被引用的自定義type
修改自定義type類型的OBJTYPE_VAR時失敗

OBJTYPE_VAR原有結構CREATE OR REPLACE TYPE "OBJTYPE_VAR" AS OBJECT(field0 VARCHAR2(1000),field1 VARCHAR2(1000))修改后的新結構CREATE OR REPLACE TYPE "OBJTYPE_VAR" AS OBJECT(serialNo Number,field0 VARCHAR2(1000),field1 VARCHAR2(1000))執行修改時提示錯誤“cannot drop or replace a type with type or table dependents”原因是已經在其他地方使用了OBJTYPE_VAR,oracle不允許直接修改修改或刪除被引用的OBJTYPE_VAR,但可以通過加上force關鍵字強制執行。強制重新創建CREATE OR REPLACE TYPE "OBJTYPE_VAR" FORCE AS OBJECT (serialNo NUMBER,field0 VARCHAR2(1000),field1 VARCHAR2(1000)) 強制刪除掉OBJTYPE_VARdrop type OBJTYPE_VAR force定義一維可變數組CREATE OR REPLACE TYPE "TBLTYP_VAR" Is Table Of VARCHAR2 (32767);CREATE OR REPLACE TYPE "TBLTYP_Int" Is Table Of Pls_Integer;定義三維可變數組CREATE OR REPLACE TYPE "OBJTYPE_VAR" FORCE AS OBJECT(serialNo NUMBER,field0 VARCHAR2(1000),field1 VARCHAR2(1000))

oracle數組屬性和函數
COUNT 返回集合中元素的個數
DELETE 刪除集合中所有元素
DELETE(x) 刪除元素下標為x的元素 對VARRAY非法
DELETE(x,y) 刪除元素下標從X到Y的元素 對VARRAY非法
EXIST(x) 如果集合元素x已經初始化,則返回TRUE, 否則返回FALSE
EXTEND 在集合末尾添加一個元素 對Index_by非法
EXTEND(x) 在集合末尾添加x個元素 對Index_by非法
EXTEND(x,n) 在集合末尾添加元素n的x個副本 對Index_by非法
FIRST 返回集合中的第一個元素的下標號,對于VARRAY集合始終返回1。

LAST 返回集合中最后一個元素的下標號, 對于VARRAY返回值始終等于COUNT.
LIMIT 返回VARRY集合的最大的元素個數 Index_by集合和嵌套表無用
NEXT(x) 返回在第x個元素之后及緊挨著它的元素值,如果x是最后一個元素,返回null.
PRIOR(x) 返回在第x個元素之前緊挨著它的元素的值,如果x是第一個元素,則返回null。
TRIM 從集合末端開始刪除一個元素 對于index_by不合法
TRIM(x) 從集合末端開始刪除x個元素

總結

以上是生活随笔為你收集整理的TYPE g_date_tbl_typ IS TABLE OF DATE INDEX BY VARCHAR2(1000);的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。