Thank you for the response.
I was looking at the online Ruby docs and other material, but I am not able
to find out what Sequel::DatabaseError would return, nor how to handle that
return?
Would you be able to suggest / give a hint / point in the direction of
where to learn more about this?
On Wednesday, April 25, 2018 at 2:42:17 PM UTC+1, Jeremy Evans wrote:
>
> On Wednesday, April 25, 2018 at 2:39:23 AM UTC-7, Dragutin Cvetkovic wrote:
>>
>> Hi all,
>>
>> I am pretty new to Sequel and Ruby in general, so I apologize if the
>> questions I ask are a bit repetitive and reek of newbiness:
>>
>> Consider the following code:
>>
>> begin
>>
>> dbh = Sequel.connect('oracle://user:password@hostname:port/databasename')
>>
>> sql = <<- SQL
>> MERGE INTO
>> smthsmth
>> blabla
>> SQL
>>
>> dbh.run(sql)
>>
>> rescue Sequel::DatabaseError => e
>>
>> puts e.err
>> puts e.errstr
>>
>> ensure
>>
>> dbh.disconnect if dbh
>>
>> end
>>
>>
>> 1) Is there a Sequel method/way/solution/the-usual-way-it-is-done which
>> will tell me how long a certain SQL request (dbh.run(sql) was running for?
>>
>
> If you add a database logger (:logger option), the timing information for
> each query is shown in the log.
>
>
>> 2) would the above usage of rescue Sequel:DatabaseError be correct?
>>
>
> The rescue is fine, but e.err and e.errstr are not as those are not
> supported methods.
>
> If you want to ensure a disconnect after you finish using the database,
> then you should do:
>
> begin
> Sequel.connect('oracle://user:password@hostname:port/databasename') do
> |dbh|
> sql = <<- SQL
> MERGE INTO
> smthsmth
> blabla
> SQL
>
> dbh.run(sql)
> end
> rescue Sequel::DatabaseError => e
> # ...
> end
>
> 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.
For more options, visit https://groups.google.com/d/optout.