Thank you Jeremy. Sure, will go with your recommendation.

Could you suggest method for running Stored Procedure that run few insert,
updates and then return cursor.

Thanks,

On Thu, Jun 6, 2019, 10:17 AM Jeremy Evans <[email protected]> wrote:

> On Thursday, June 6, 2019 at 5:40:33 AM UTC-7, Rama Musidipalli wrote:
>>
>>
>> I am new to Ruby... Please pardon me for any incorrect terminology..
>>
>>
>> Issue: DB["DELETE..."] ran using tinyTDS is returning empty array whereas
>> thru JDBC sybase adapter is not returning this empty array thus resulting
>> in failure of ".all" method
>>
>>
>>
>> Details:
>>
>> We have existing Ruby code that is using tinyTDS and doing all DB
>> operations with DB[ ] in a generic interface. And then running "all" method
>> as below. (yes... for DELETE, SELECT, Stored Procedures etc).
>>
>>  data = @db["#{query}"]
>>
>> output = data.all
>>
>
> Well, that's a bad idea and a misuse of the API.  It's fine if you limit
> that to queries that return rows, but when you use it for other operations,
> you are off in undefined/ adapter-dependent behavior.
>
>
>>  We changed the "adapter" to JDBC. Everything working fine but "all" is
>> throwing exception "Java::JavaSql::SQLException: The executeQuery method
>> must return a result set." when a stored procedure or DML statements are
>> ran. Whereas working when SELECT queries are ran...
>>
>> Rightnow used some hack like i.e., looking for the above exception and in
>> rescue  returning empty array but it is not sounding clean.
>>
>> Could you suggest any solution for this as we want to follow same generic
>> interface approach and want to return empty array in case stored proc
>> doesn't return result set.
>>
>
> You should restructure your interface so that for delete/update/insert
> queries, you call delete/update/insert on the dataset.  You can still
> return [] to the caller in those cases.
>
> Thanks,
> Jeremy
>
> --
> You received this message because you are subscribed to the Google Groups
> "sequel-talk" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/sequel-talk.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/sequel-talk/cecc86bf-0c65-4a5a-b112-6870a4de1ca9%40googlegroups.com
> <https://groups.google.com/d/msgid/sequel-talk/cecc86bf-0c65-4a5a-b112-6870a4de1ca9%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sequel-talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sequel-talk.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sequel-talk/CAME-npkLHC4ZdZD9VFWvyEF5od0Dq%2B76h87Y6PRM4%2BLhnVXwqA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to