您的位置:首页 > 数据库 > Oracle

博主对Oracle对象追加属性,更改构造函数,继承方面的脚本使用记录.

2010-04-15 12:37 489 查看
大家如果碰到Oracle对象中后期增加属性,增加继承性,增加自定义构造函数的时候可以参考我的做法,我觉得不一定有很多人有我这种经历.好像网上这方面的资料很少的,所以贴出来。

CREATE OR REPLACE TYPE TMS.STOP_DETAIL
AS OBJECT
(
STOP_DETAIL_ID INTEGER,
BOL_NO VARCHAR2(16),
PICK_UP_DROP_OFF_IND VARCHAR2(1),
SCAN_ID VARCHAR2(255),
DESCRIPTION VARCHAR2(20),
PACKAGE_TYPE VARCHAR2(10),
LINE_STATUS VARCHAR2(1),
SCAN_IND VARCHAR2(1),
EXCEPTION_CODE VARCHAR2(4),
UPLOADED_DT DATE,
SCAN_TIMESTAMP DATE,
WEIGHT INTEGER,
WEIGHT_UOM VARCHAR2(3),
STOP_ID INTEGER,
sync_status CHAR(1),
exception_comment VARCHAR2(255)
--pos po_stop_details
)
alter type STOP_DETAIL
add attribute
(
container_id varchar2(255),
next_detail_id integer,
delete_flag varchar2(1),
reserve1 varchar2(255),
reserve2 varchar2(255)
)
cascade including table data

alter type STOP_DETAIL
add constructor function STOP_DETAIL(
STOP_DETAIL_ID INTEGER,
BOL_NO VARCHAR2,
PICK_UP_DROP_OFF_IND VARCHAR2,
SCAN_ID VARCHAR2,
DESCRIPTION VARCHAR2,
PACKAGE_TYPE VARCHAR2,
LINE_STATUS VARCHAR2,
SCAN_IND VARCHAR2,
EXCEPTION_CODE VARCHAR2,
UPLOADED_DT DATE,
SCAN_TIMESTAMP DATE,
WEIGHT INTEGER,
WEIGHT_UOM VARCHAR2,
STOP_ID INTEGER,
sync_status CHAR,
exception_comment VARCHAR2
)
return self as result
CASCADE INCLUDING TABLE DATA
alter type STOP_DETAIL
drop constructor function STOP_DETAIL(
STOP_DETAIL_ID INTEGER,
BOL_NO VARCHAR2,
PICK_UP_DROP_OFF_IND VARCHAR2,
SCAN_ID VARCHAR2,
DESCRIPTION VARCHAR2,
PACKAGE_TYPE VARCHAR2,
LINE_STATUS VARCHAR2,
SCAN_IND VARCHAR2,
EXCEPTION_CODE VARCHAR2,
UPLOADED_DT DATE,
SCAN_TIMESTAMP DATE,
WEIGHT INTEGER,
WEIGHT_UOM VARCHAR2,
STOP_ID INTEGER,
sync_status CHAR,
exception_comment VARCHAR2
)
return self as result
CASCADE INCLUDING TABLE DATA
alter type STOP_DETAIL
drop attribute
(
container_id,
next_detail_id,
delete_flag,
reserve1 ,
reserve2
)
cascade including table data
alter type STOP_DETAIL
INSTANTIABLE
not final
cascade including table data
alter type STOP_DETAIL
INSTANTIABLE
not final
cascade including table data
alter type STOP_DETAIL
INSTANTIABLE
not final
cascade including table data
alter type STOP_DETAIL
INSTANTIABLE
not final
cascade including table data
alter type STOP_DETAIL
INSTANTIABLE
not final
cascade including table data
alter type STOP_DETAIL
INSTANTIABLE
not final
cascade including table data
alter type STOP_DETAIL
INSTANTIABLE
not final
cascade including table data
alter type STOP_DETAIL
INSTANTIABLE
not final
cascade including table data
alter type STOP_DETAIL
INSTANTIABLE
not final
cascade including table data
alter type STOP_DETAIL
INSTANTIABLE
not final
cascade including table data
alter type STOP_DETAIL
INSTANTIABLE
not final
cascade not including table data
alter type STOP_DETAIL
not final
cascade not including table data
alter type STOP_DETAIL
INSTANTIABLE
not final
cascade not including table data
alter type STOP_DETAIL
not final
cascade not including table data
alter type STOP_DETAIL
INSTANTIABLE
cascade not including table data
alter type STOP_DETAIL
not final
cascade not including table data
alter type STOP_DETAIL
INSTANTIABLE
cascade not including table data
/

DROP SYNONYM WEBSRV.STOP_DETAIL;

CREATE SYNONYM WEBSRV.STOP_DETAIL FOR TMS.STOP_DETAIL;

GRANT EXECUTE ON TMS.STOP_DETAIL TO WEBSRV;

CREATE OR REPLACE TYPE TMS.STOP_DETAIL_EX UNDER TMS.STOP_DETAIL
(
container_id varchar2(255),
next_detail_id integer,
delete_flag varchar2(1),
reserve1 varchar2(255),
reserve2 varchar2(255)
)
INSTANTIABLE
NOT FINAL;
/

DROP SYNONYM WEBSRV.STOP_DETAIL_EX;

CREATE SYNONYM WEBSRV.STOP_DETAIL_EX FOR TMS.STOP_DETAIL_EX;

GRANT EXECUTE ON TMS.STOP_DETAIL_EX TO WEBSRV;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐