-- 批量插入到IAMS_CHECK_RESULT表中
PROCEDURE PROC_IAMS_CHECK_INSERT(I_RID IN INTEGER,
I_STATDATE IN DATE,
I_L_VALUE IN VARCHAR2,
I_R_VALUE IN VARCHAR2) IS
V_RID INTEGER;
V_STATDATE DATE;
BEGIN
V_RID := I_RID;
--转换日期格式
--V_STATDATE := TO_DATE(I_STATDATE,'YYYY-MM-DD');
V_STATDATE := I_STATDATE;
--删除当前日期数据
DELETE FROM IAMS_CHECK_RESULT WHERE STATDATE=V_STATDATE AND RID = V_RID;
--批量插入数据到指定表中
EXECUTE IMMEDIATE 'INSERT INTO IAMS_CHECK_RESULT(RID, STATDATE, L_RESULT, R_RESULT)
VALUES (:RID,:STATDATE,:I_L_VALUE,:I_R_VALUE)'
USING I_RID,V_STATDATE,I_L_VALUE,I_R_VALUE;
COMMIT;
END PROC_IAMS_CHECK_INSERT;
这个首先是个存储过程,其次你实现了插入数据之前,根据V_RID和STATDATE条件删除当前日期IAMS_CHECK_RESULT表数据
恩恩,PROCEDURE PROC_IAMS_CHECK_INSERT(I_RID IN INTEGER,
I_STATDATE IN DATE,
I_L_VALUE IN VARCHAR2,
I_R_VALUE IN VARCHAR2) IS
V_RID INTEGER;
V_STATDATE DATE;这个是什么意思啊?定义了四个字段,怎么IS俩个字段呢?
@培培@java: V_RID INTEGER;
V_STATDATE DATE这两个是定义的变量
@迷失的java: 那PROC_IAMS_CHECK_INSERT(I_RID IN INTEGER,
I_STATDATE IN DATE,
I_L_VALUE IN VARCHAR2,
I_R_VALUE IN VARCHAR2)是设置这个PROC_IAMS_CHECK_INSERT存储过程带有四个参数吗?如果调用这个存储过程也要带有这个四个参数吗?
核心不就是 DELETE 然后 INSERT
是的。。。