什么是编写一个用于记录持久性的oracle包的最佳解决方案? 我一直写的是这样的:INSERT INTO + COMMIT IN包
create or replace
PACKAGE BODY "USP_PRICELIST" AS
PROCEDURE usp_TABLE1Save
(
pErrorCode OUT NUMBER,
pMessage OUT VARCHAR2,
pPARAM1 IN CHAR,
pPARAM2 IN CHAR
)
IS
BEGIN
pErrorCode := 0;
INSERT INTO TABLE1
(PARAM1, PARAM2)
VALUES
(pPARAM1, pPARAM2);
EXCEPTION
WHEN OTHERS THEN pErrorCode := SQLCODE; pMessage := SQLERRM;
END usp_TABLE1Save;
END USP_PRICELIST;
,我想知道如果我有INSERT INTO后提交。
Alberto
概念为什么你不让错误传播?捕获错误并返回错误代码很容易出错(可以忘记检查返回值),详细(更多代码,更多参数)和重复(所有调用此过程的代码都需要检查错误)。在没有重新提出例外的情况下,几乎没有任何理由赶上“其他人”。 – 2010-11-05 13:32:11