Thanks-- the proposed docpatch was a trial balloon to get this answer.
Here's copy for a revised proposed patch:

When you really don't know if the statement you have in a variable is going
 to be a C<SELECT>  or not, unrolling the process into C<prepare>,C<execute>,
 and some C<fetch> variant called within an C<eval> block will always work.



On Fri, Jun 17, 2011 at 2:51 AM, Martin J. Evans
<martin.ev...@easysoft.com> wrote:
>
> So the proposed change saying
>
> "When you really don't know if the statement you have in a variable is going
> to be a C<SELECT>  or not, unrolling the process into C<prepare>,C<execute>,
> and some C<fetch>  variant will always work, as C<fetch>  is defined to
> return no data when called on executed non-C<SELECT>  statement handles."
>
> I don't see how DBD::ODBC is supposed to implement that. fetch is just an
> alias for fetchrow_arrayref. There is fetch and nothing else. If you call
> selectall* it ends up in dbd_st_fetch, if you call fetch it ends up in
> dbd_st_fetch.
>
> So the question becomes which is right DBD::Sybase behaviour or DBD::ODBC.
>
> Martin

Reply via email to