¿Está utilizando PL/SQL? ¿O estás usando Pro*C/C++? SQLCA.SQLERRD
se definiría en Pro*C/C++, no se definiría en PL/SQL. Como no etiquetó la pregunta para Pro*C, supongo que solo está usando PL/SQL.
En PL/SQL, simplemente hace referencia a SQL%ROWCOUNT
después de ejecutar una instrucción SQL para obtener el recuento de filas. Algo como
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;