# Dbi:oci8 problems

**URL:** <https://www.ruby-forum.com/t/dbi-oci8-problems/142489>\
**Category:** Ruby\
**Created:** [July 8, 2008, 2:17pm UTC](https://www.ruby-forum.com/t/dbi-oci8-problems/142489 "2008-07-08T14:17:12Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![paco](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/a6a055/32.png) [@paco](https://www.ruby-forum.com/u/paco)\
**Post date:** [July 8, 2008, 2:17pm UTC](https://www.ruby-forum.com/t/dbi-oci8-problems/142489/1 "2008-07-08T14:17:12Z")

</div>

Hi, I’ve a problem with dbi:oci8. I hope that you could help me.  
My code is this:

1 require ‘dbi’  
2 dbh = DBI.connect(“dbi:oci8:service\_name”, “user”, “password”)  
3 rs = dbh.prepare(‘SELECT \* FROM table’)  
4 rs.execute  
5 while rsRow = rs.fetch do  
6 p rsRow  
7 end  
8 rs.finish  
9 dbh.disconnect if dbh

I’ve installed correctly all I need (DBI, OCI8, …), but I get this  
error:

attr.c:178:in oci8lib.so: ORA-24316: illegal handle type  
(DBI::DatabaseError)  
from /usr/lib/ruby/site\_ruby/1.8/oci8.rb:1591:in `initialize' from /usr/lib/ruby/site_ruby/1.8/oci8.rb:780:in`new’  
from /usr/lib/ruby/site\_ruby/1.8/oci8.rb:780:in  
`column_metadata' from /usr/lib/ruby/site_ruby/1.8/oci8.rb:779:in`collect’  
from /usr/lib/ruby/site\_ruby/1.8/oci8.rb:779:in  
`column_metadata' from /usr/lib/ruby/site_ruby/1.8/DBD/OCI8/OCI8.rb:346:in`column\_info’  
from /usr/lib/ruby/site\_ruby/1.8/dbi.rb:666:in `column_names' from /usr/lib/ruby/site_ruby/1.8/dbi.rb:646:in`execute’  
from test.rb:14

If I comment lines 4-5-6-7 is all ok: load driver, connect and prepare.  
I dont’t understand what is the problem, the same code with Mysql driver  
is ok.  
Can you help me?

Thanks, paco

---

<div class="post-metadata">

**Author:** ![paco](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/a6a055/32.png) [@paco](https://www.ruby-forum.com/u/paco)\
**Post date:** [July 10, 2008, 8:13pm UTC](https://www.ruby-forum.com/t/dbi-oci8-problems/142489/2 "2008-07-10T20:13:47Z")

</div>

Now it’s ok, you can view the solution on ruby-oci8 forum. Thanks to  
Kubo T.n for his help.

Bye  
paco

Glauco Magnelli wrote:

> Hi, I’ve a problem with dbi:oci8. I hope that you could help me.  
> My code is this:
> 
> 1 require ‘dbi’  
> 2 dbh = DBI.connect(“dbi:oci8:service\_name”, “user”, “password”)  
> 3 rs = dbh.prepare(‘SELECT \* FROM table’)  
> 4 rs.execute  
> 5 while rsRow = rs.fetch do  
> 6 p rsRow  
> 7 end  
> 8 rs.finish  
> 9 dbh.disconnect if dbh
> 
> I’ve installed correctly all I need (DBI, OCI8, …), but I get this  
> error:
> 
> attr.c:178:in oci8lib.so: ORA-24316: illegal handle type  
> (DBI::DatabaseError)  
> from /usr/lib/ruby/site\_ruby/1.8/oci8.rb:1591:in `initialize' from /usr/lib/ruby/site_ruby/1.8/oci8.rb:780:in`new’  
> from /usr/lib/ruby/site\_ruby/1.8/oci8.rb:780:in  
> `column_metadata' from /usr/lib/ruby/site_ruby/1.8/oci8.rb:779:in`collect’  
> from /usr/lib/ruby/site\_ruby/1.8/oci8.rb:779:in  
> `column_metadata' from /usr/lib/ruby/site_ruby/1.8/DBD/OCI8/OCI8.rb:346:in`column\_info’  
> from /usr/lib/ruby/site\_ruby/1.8/dbi.rb:666:in `column_names' from /usr/lib/ruby/site_ruby/1.8/dbi.rb:646:in`execute’  
> from test.rb:14
> 
> If I comment lines 4-5-6-7 is all ok: load driver, connect and prepare.  
> I dont’t understand what is the problem, the same code with Mysql driver  
> is ok.  
> Can you help me?
> 
> Thanks, paco
