-
oralce 数据类型5
在oracle 存储过程中 我想创建以下存储过程 tab_args是一个数组 我想制作一个数组里面可以放数字也可以放字符串也可以放日期。这个类型该如何定制。
还有 如下形式 如果数组内容有多个的话 怎么写这个存储过程
procedure executePrarmSql(,p_sql varchar2, p_args tab_args) as
begin
execute immediate p_sql using p_args(1).arg, p_args(2).arg ,p_args(3).arg;
end;
2011年5月26日 16:52
2个答案 按时间排序 按投票排序
-
采纳的答案
你这个需求很难实现,说下原因,
存放多个类型的数组可以通过自定义类型实现CREATE OR REPLACE TYPE types_obj_type AS OBJECT ( typesIndex NUMBER, num NUMBER, str VARCHAR2(100), d DATE ) CREATE OR REPLACE TYPE parm_arrays_type AS TABLE OF types_obj_type DECLARE arr parm_arrays_type; BEGIN arr := parm_arrays_type(); arr.EXTEND(3); arr(1) := types_obj_type(1,1,NULL,NULL); arr(2) := types_obj_type(2,NULL,'aaa',NULL); arr(3) := types_obj_type(3,NULL,NULL,SYSDATE); END;
问题是using后面的参数个数是不确定的,所以使用using实现不了,动态参数可以自己手动替换,但是这样的话参数必须是字符串了,和多类型参数的需求背离了。
说些题外话,能直接sql的不要用动态sql.2011年5月27日 11:20
相关推荐
oracle数据类型总结PPT,类型之间的区别
oracle数据类型的经典学习资料
oracle新手入门指导之四——ORACLE数据类型 .txtoracle新手入门指导之四——ORACLE数据类型 .txt
Oracle的数据类型: 1、CHAR数据类型,该类型是固定长度的字符串,如果没指定大小,则默认占用一字节,如果输入的值小于指定的长度,则数据库用空格填充至固定长度,如果用户输入的值大于指定的长度,则数据库...
Oracle数据类型之Number, 全方位介绍Number数据类型。
oracle数据库中各种数据类型的详细说明
oracle数据类型.docoracle数据类型.doc
ORACLE数据类型
RT oracle数据类型及存储方式.doc
公司内部培训V3.0 oracle 数据类型及常用函数培训
关于oracle数据类型及存储方式基础知识,也许对你有所帮助
oracle数据类型,CHAR 固定长度字符串 最大长度2000 bytes
Oracle10g reference操作手册,附Oracle数据类型精解,以及Powerdesigner实例傻瓜式图文教程,方便入门的同时提供相应实际实践经验
Oracle数据类型说明,CHAR VARCHAR2 NCHAR NVARCHAR2 等
涵盖很全的Oracle 10g数据库学习教程,我在网上找了很久才找到,适合初学oracle的人学习。
Oracle实用教程_04章_Oracle数据类型和函数[整理].pdf
SqlServer,Oracle数据类型,函数,导入导出对照
Oracle 数据类型及存储方式 数据存储是数据流在加工过程中产生的临时文件或加工过程中需要查找的信息。数据以某种格式记录在计算机内部或外部存储介质上。
不同于MySQL,Oracle有着其独特的数据类型,本文档整理了Oracle常用的数据类型,并对不同数据类型的使用场景进行了描述。