f



How to connect to a DB2 database.

Hello Ruby world.
The platform:

ruby 1.8.2 (2004-07-29) [i386-mswin32]
Windows/XP
DB2 8.1.4
DBname = dvddbase

The questions:

1 - How do I talk (connect) to a DB2 database using Ruby?
2 - Any sample code that can be shared?

Thank you

Victor


0
victor.reyes (155)
10/28/2004 3:28:26 PM
comp.lang.ruby 48886 articles. 0 followers. Post Follow

4 Replies
662 Views

Similar Articles

[PageSpeed] 24

On Fri, Oct 29, 2004 at 12:28:26AM +0900, Victor Reyes wrote:
> Hello Ruby world.
> The platform:
> 
> ruby 1.8.2 (2004-07-29) [i386-mswin32]
> Windows/XP
> DB2 8.1.4
> DBname = dvddbase
> 
> The questions:
> 
> 1 - How do I talk (connect) to a DB2 database using Ruby?
> 2 - Any sample code that can be shared?

You need Ruby/DBI and Ruby/DB2. See RAA (raa.ruby-lang.org).
http://ruby-dbi.rubyforge.org

A simple example:

  require 'dbi'

  DBI.connect('dbi:DB2:dvddbase', 'username', 'password') do |dbh|
    p dbh.select_all('SELECT * FROM table')
  end

Hope this helps.

Regards,

  Michael


0
mneumann (589)
10/28/2004 3:42:49 PM
I noticed that I already have dbi installed as part of the 1.8.2 installation.
However, when I try to use it to test it, I get the following errors:

C:\Program Files\IBM\SQLLIB\BIN>ruby db2c.rb
C:/Ruby/lib/ruby/site_ruby/1.8/dbi/dbi.rb:499:in `load_driver':  is
not a class/module (TypeError)
        from C:/Ruby/lib/ruby/site_ruby/1.8/dbi/dbi.rb:401:in `_get_full_driver'
        from C:/Ruby/lib/ruby/site_ruby/1.8/dbi/dbi.rb:381:in `connect'
        from db2c.rb:5

Any idea?

Thank you


0
victor.reyes (155)
10/28/2004 4:22:59 PM
On Fri, Oct 29, 2004 at 01:22:59AM +0900, Victor Reyes wrote:
> I noticed that I already have dbi installed as part of the 1.8.2 installation.
> However, when I try to use it to test it, I get the following errors:
> 
> C:\Program Files\IBM\SQLLIB\BIN>ruby db2c.rb
> C:/Ruby/lib/ruby/site_ruby/1.8/dbi/dbi.rb:499:in `load_driver':  is
> not a class/module (TypeError)
>         from C:/Ruby/lib/ruby/site_ruby/1.8/dbi/dbi.rb:401:in `_get_full_driver'
>         from C:/Ruby/lib/ruby/site_ruby/1.8/dbi/dbi.rb:381:in `connect'
>         from db2c.rb:5
> 
> Any idea?

Yes, you have to install Ruby/DB2, too ;-)

Regards,

  Michael


0
mneumann (589)
10/28/2004 4:53:00 PM
Mike,
Thank you for your help so far. 
The new problem now is installing Ruby/DB2. 

Right from the beginning I have a problem. the "export" command does
not work under windows/XP. Second, even when I set the DB2DIR
environmental variable via the "set" command, it still does not work.

C:\$user\ruby\ruby-db2-0.4>export DB2DIR=C:/db2/SQLLIB/
'export' is not recognized as an internal or external command,
operable program or batch file.

C:\$user\ruby\ruby-db2-0.4>

or using the "set" command, which appears to work:

C:\$user\ruby\ruby-db2-0.4>set    DB2DIR=C:/db2/SQLLIB/

C:\$user\ruby\ruby-db2-0.4>

C:\$user\ruby\ruby-db2-0.4>ruby setup.rb config
setup.rb:714: warning: don't put space before argument parentheses
entering config phase...
config done.

C:\$user\ruby\ruby-db2-0.4>

C:\$user\ruby\ruby-db2-0.4>ruby setup.rb setup
setup.rb:714: warning: don't put space before argument parentheses
entering setup phase...
C:/Ruby/bin/ruby extconf.rb
checking for SQLConnect() in db2cli.lib... no
ABORT: Could not locate DB2 libraries or headers!
Please set DB2DIR to your DB2 directory, e.g. /usr/IBMdb2/V7.1 (UNIX)
or C:/SQLLIB (Windows)
setup failed
'system C:/Ruby/bin/ruby extconf.rb' failed
try "ruby setup.rb --help" for usage

C:\$user\ruby\ruby-db2-0.4>

Question:

Is there a windows/xp binary that can be downloaded? or any idea about
this new road-block?

Thank you

Victor


0
victor.reyes (155)
10/28/2004 6:37:16 PM
Reply: