Bruger du PL/SQL? Eller bruger du Pro*C/C++? SQLCA.SQLERRD
ville være defineret i Pro*C/C++, ville det ikke være defineret i PL/SQL. Da du ikke taggede spørgsmålet til Pro*C, gætter jeg på, at du bare bruger PL/SQL.
I PL/SQL refererer du blot til SQL%ROWCOUNT
efter at have kørt en SQL-sætning for at få rækkeantallet. Noget lignende
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;