Peter Hircock wrote:

> I know the ODBC driver is returning "SUCCESS_WITH_INFO" code 01001.
>
> [Reuters][Open Access][Reuters DB]I41249: Fewer than requested
>  number of rows retrieved because no more rows found (SQL-01001)
> [Reuters][Open Access][Reuters DB]I41255: No rows returned because there
> are no rows in the results set (SQL-01001)
>
> Would there be a way to tell ADO to ignore the ODBC SUCCESS_WITH_INFO
> information ?

Unfortunately, to distinguish between errors and warnings
I have to loop through the errors collection and examine
every member.
If this loop is the most cpu and time consuming part, I could
clear the collection:

  if ( $err->{Count} > $MAX_ERRORS ) {
    $err->Clear;
    print "Too many errors!\n";
  } else {
    print $_->Description, "\n" for Win32::OLE::in( $err );
  }

For $MAX_ERRORS I could add a DBD::ADO specific attribute, e.g.

  $sth->{ado_max_errors} = 100;


Steffen

Reply via email to