代码之家  ›  专栏  ›  技术社区  ›  AbdeAMNR

pl pql没有正确执行

  •  0
  • AbdeAMNR  · 技术社区  · 6 年前

    我必须在一个表中插入近40000行,每次尝试在sql developer中执行它时,我都找不到表中的任何行,看起来它根本没有执行begin块,因为我在输出中放了一个要打印的消息,执行之后什么也没有,我试着只用几个插入语句来执行这个块,它是有效的,

    为什么SQL开发人员无法处理PLSQL块中的大量插入语句?

    下面是我的剧本:

    set serveroutput on
    set linesize 200
    set timing on
    
    whenever sqlerror exit failure rollback;
    whenever oserror exit failure rollback;
    
    ALTER SESSION SET current_schema = carp;
    ALTER SESSION SET nls_length_semantics = char;
    
    DECLARE
        v_rows_count VARCHAR2(10 CHAR);
    
        PROCEDURE trace (p_message IN VARCHAR2)
        IS
        BEGIN
            DBMS_OUTPUT.put_line (TO_CHAR (SYSDATE, 'YYYYMMDD HH24:MI:SS') || ' - INFO - ' || p_message);
        END trace;
    
    BEGIN
    
        dbms_output.ENABLE(1000000);
    
        TRACE ('=========== Exécution du script: START ===========');
    
        Insert into my_table (PK_SEQ,CODE) values (1260389,'00AI');
        Insert into my_table (PK_SEQ,CODE) values (1321244,'00AI');
    
        select COUNT(*) into v_rows_count FROM carp.param_site_groupe_site;
        dbms_output.put_line('Nombre de lignes insérées: ' || v_rows_count);
    
        TRACE (q'[=========== Exécution du script: FIN ===========]');
    
        COMMIT;
    
    END;
    /
    
    exit;
    

    请注意,begin块中有超过40000个insert语句,而不是上面所示的两个 我缩小脚本大小只是为了方便阅读

    0 回复  |  直到 6 年前