Re: Error during SQL Server restore fails to propagate back to DBI client on Windows

[email protected] (pr)
Newsgroups perl.dbi.users
Message-ID <[email protected]>

--- On Mon, 2/22/10, Martin J. Evans <[email protected]> wrote:
> <huger amounts snipped>
> > Yes, it does work for me when {odbc_exec_direct} is
> set to true.  I also understand your explanation of why
> this is the correct way to do things.
> >
> >    
> You need to set odbc_exec_direct - sorry if this prove
> inconvenient for 
> you but there is no other way for DBD::ODBC to know you
> need to do this.
> 
> > The real concern here is why error 3224 seems
> untrappable if this restore is done with {odbc_exec_direct}
> is set to false.  I cannot see how to trap this error
> at all.
> >
> >    
> I don't think there is a way to do this. I replicated your
> situation in 
> C via ODBC and get the same issue. You could perhaps talk
> to Microsoft 
> but I doubt it will get you anywhere.
> 
> > Is it possible to (incorrectly) set odbc_exec_direct
> to false, issue the database restore, and trap error 3224 in
> perl?
> >
> >    
> I don't believe so via Perl and DBD::ODBC or even directly
> via the ODBC API.
> 
> 
> In fairness, perhaps due to my inability to follow where
> you were going 
> I've taken a bit too long to get to the gist of your issues
> and it has 
> arguably highlighted an issue in SQLMoreResults not calling
> set_err in 
> DBI. I always try to help although not always
> successfully.
> 

Thank you very much, Martin!  Your explanation has been tremendously helpful.  It's really appreciated!

If I'm not out of turn, I find this an interesting corner case.  Maybe it merits putting a brief description+caveat in a later version of the DBD::ODBC docs?

Once again, thank you for all of your time and help!

-rt
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.