Oracle
 sql >> Database >  >> RDS >> Oracle

come dichiarare SQLCA.SQLERRD?

Stai usando PL/SQL? O stai usando Pro*C/C++? SQLCA.SQLERRD sarebbe definito in Pro*C/C++, non sarebbe definito in PL/SQL. Dal momento che non hai taggato la domanda per Pro*C, suppongo che tu stia solo usando PL/SQL.

In PL/SQL, fai semplicemente riferimento a SQL%ROWCOUNT dopo aver eseguito un'istruzione SQL per ottenere il conteggio delle righe. Qualcosa come

DECLARE
  l_num_rows INTEGER;
BEGIN
  INSERT INTO t1( <<list of columns>> )
    SELECT <<list of columns>>
      FROM <<some tables>>
     WHERE <<some predicates>>
  l_num_rows := sql%rowcount;
  dbms_output.put_line( 'The statement inserted ' || l_num_rows || ' rows.';
END;