ruby连接GBase8s配置
Ruby环境搭建
1、上传ruby源码包,源码下载地址
http://www.ruby-lang.org/en/downloads/
2、配置并编译源代码
./configure
Make
Make install
3、安装openssl,由于默认gem源不可用。重新配置https的gem源需要首先安装openssl。
yum install openssl
yum install libssl-dev
进入 ruby源码目录/ext/openssl
运行:
ruby extconfig.rb
make
make install
4、安装gzib,
cd rubyum install libssl-devel
yum install libssl-devel
进入 ruby源码目录/ext/zlib
make
make install装目录/ext/zlib
5、gem配置
gem sources --remove https://rubygems.org/
gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/
gem sources -l
*** CURRENT SOURCES ***
https://gems.ruby-china.org
6、安装unixodbc和unixodbc-devel
7、安装 dbd-odbc
gem install dbd-odbc
8、安装 dbi
gem install dbi
9、安装 ruby-odbc
gem install ruby-odbc
10、配置8todbc
11、测试代码
#!/usr/bin/ruby -w
require “dbd/ODBC”
begin
# 连接到 MySQL 服务器
dbh = DBI.connect(“DBI:ODBC:gbase8t”,
“informix”, “informix”)
dbh.do(“DROP TABLE IF EXISTS EMPLOYEE”)
dbh.do(“CREATE TABLE EMPLOYEE (
FIRST_NAME CHAR(20) NOT NULL,
LAST_NAME CHAR(20),
AGE INT,
SEX CHAR(1),
INCOME INT )” )
puts “Table created”
dbh.do( “INSERT INTO EMPLOYEE(FIRST_NAME,
LAST_NAME,
AGE,
SEX,
INCOME)
VALUES (‘Mac’, ‘Mohan’, 20, ‘M’, 2000)” )
puts “Record has been created”
dbh.commit
sth = dbh.prepare(“SELECT * FROM EMPLOYEE”)
sth.execute()
sth.fetch do |row|
printf “First Name: %s, Last Name : %s\n”, row[0], row[1]
printf “Age: %d, Sex : %s\n”, row[2], row[3]
printf “Salary :%d \n\n”, row[4]
end
sth.finish
rescue DBI::DatabaseError => e
puts “An error occurred”
puts “Error code: #{e.err}”
puts “Error message: #{e.errstr}”
dbh.rollback
ensure
# 断开与服务器的连接
dbh.disconnect if dbh
end
12、执行代码
Ruby test.rb