ruby DBI安装使用指南

1.安装
首先,我是使用mysql进行测试的,你的机器上需要安装mysql数据库。
然后执行:
gem install mysql

到rubyforge下载ruby-DBI,解压后cd到目录运行如下命令:
ruby setup.rb config --with=dbi,dbd_mysql
ruby setup.rb setup
ruby setup.rb install

完整的setup命令参数参考DBI的doc

2.完整例子
DBI是一类似于ODBC的开发式的统一的数据库编程接口,结构层次上可以分为两层:
1.Database Interface——数据库接口层,与数据库无关,提供与数据库无关的标准接口
2.Database Driver——数据库驱动,与数据库相关

DBI也是很简单易用的,一个完整的使用例子,对于初学者可能有点帮助:

require 'dbi'
begin
  #连接数据库
  dbh=DBI.connect("DBI:Mysql:dbi_test:localhost","root","")
  
  dbh.columns("simple").each do |h|
    p h
  end
  #示范3种事务处理方式
  #手动commit
  dbh["AutoCommit"]=false
  1.upto(10) do |i|
    sql = "insert into simple (name, author) VALUES (?, ?)"
    dbh.do(sql, "Song #{i}", "#{i}")
  end
  dbh.commit
  
  #使用transaction方法
  dbh.transaction do |dbh|
    1.upto(10) do |i|
      sql = "insert into simple (name, author) VALUES (?, ?)"
      dbh.do(sql, "Song #{i}", "#{i}")
    end
  end
  
  #使用SQL语句
  dbh.do("SET AUTOCOMMIT=0")
  dbh.do("BEGIN")
  dbh["AutoCommit"]=false
  dbh.do("UPDATE simple set name='test' where id='1'")
  dbh.do("COMMIT")
  
  #查询
  sth=dbh.execute("select count(id) from simple")
  puts "bookCount:#{sth.fetch[0]}"
  sth.finish
  begin
    sth=dbh.prepare("select * from simple")
    sth.execute
    while row=sth.fetch do
      p row
    end
    sth.finish
  rescue
  end
  
  #上面这段查询可以改写为:
  #dbh.select_all("select * from simple") do |row|
  #   p row
  #end   
  
  
  #使用工具类输出xml格式结果集以及测量查询时间
  sql="select * from simple"
  mesuretime=DBI::Utils::measure do
    sth=dbh.execute(sql)
  end 
  puts "SQL:#{sql}"
  puts "Time:#{mesuretime}"
  rows=sth.fetch_all
  col_names=sth.column_names
  sth.finish
  puts DBI::Utils::XMLFormatter.table(rows)
  
  dbh.do("delete from simple")
rescue  DBI::DatabaseError=>e
  puts "error code:#{e.err}"
  puts "Error message:#{e.errstr}"
ensure
  dbh.disconnect if dbh
end 

文章转自庄周梦蝶  ,原文发布时间5.17

时间: 2024-11-10 10:52:31

ruby DBI安装使用指南的相关文章

微软为IT部门撰写了Windows 8.1安装使用指南

微软为IT部门撰写了Windows 8.1安装使用指南 鉴于目前Windows  8系统令人尴尬的市场份额,微软不断部署新的行销策略来的推进旗舰系统的发展.随着Windows 8.1的推出,微软除了不断加强广告营销宣传力度,也积极的加强和企业之间的互动沟通.今天微软就宣布针对企业的IT部门分享了最新的Windows 8.1的安装使用指南,任何企业的消费者都能免费下载阅读. 微软已经使用了浑身解数来推广Windows 8.1,几乎每周日的足球赛季中都会看到Modern界面的身影,而本次向IT部门分

英特尔硬件加速管理器HAXM安装使用指南

英特尔硬件加速管理器HAXM安装使用指南 Dawei Cheng 程大伟... 于 星期一, 02/04/2012 - 21:23 提交 预备知识 Intel HAXM需要预先安装Android SDK(version 17 or higher).请到安卓官方网站下载(http://developer.android.com/sdk/) . 系统要求 硬件要求: 支持VT-x, EM64T, and Execute Disable Bit 的Intel处理器 1GB及以上的内存 支持的操作系统:

《Ruby程序员修炼之道》(第2版)—第1章1.2节剖析Ruby的安装

1.2 剖析Ruby的安装在系统上安装Ruby意味着在许多磁盘目录中安装了Ruby语言的库和支持文件.大多数时候,Ruby都知道如何找到其所需要的这些目录而不用弹出提示.但是了解Ruby安装的知识对了解Ruby本身大有益处. 查看Ruby的源代码 除了Ruby安装目录体系之外,Ruby的源代码目录也安装好了.如果没有,可以到Ruby的主页中下载.源代码目录中包含了许多在最终安装中出现的Ruby文件和许多已编译为目标文件并安装好的C语言文件.另外,源代码目录包含了一些如ChangeLog和软件授权

Ruby的安装与运行_ruby专题

Ruby的安装 注意点 OSX或linux较好 不同版本的实现:c++.C.java 本次C Ruby 安装方法 linux或OSX都有预装 包管理器(apt.yum.brew),并非最新 版本控制系统:rvm(rvm.io).rbenv rvm 查看ruby版本 rvm list known 安装 rvm install 2.2.1 帮助 rvm --help 用户手册 : man rvm rbenv OSX下用brew安装 windows下安装通过rubyInstaller 学习资料 工具

Ruby入门点滴-Ruby的安装_ruby专题

Ruby的安装可以去Ruby的官方网站下载Ruby1.56的Windows安装包,安装安毕后,打开Dos窗口,输入ruby -v显示  ruby 1.8.6 (2007-03-13 patchlevel 0) [i386-mswin32] 的话就说明Ruby已经安装成功,版本号为Ruby 1.96.  安装完后,在 开始菜单->程序 里面出现了 Ruby-186-20 这个程序.点开他,下面有五个子菜单.  1. Ruby Documentation (里面是Ruby的联机文档)  2.Ruby

大数据应用日志采集之Scribe 安装配置指南

1.概述 Scribe是Facebook开源的日志收集系统,在Facebook内部已经得到大量的应用.它能从各种日志源收集日志,存储到一个中央存储系统上,便于进行集中统计分析处理.它为日志的"分布式收集,统一处理"提供了一个可扩展的,高容错的方案.scribe代码很简单,但是安装配置却很复杂,本文记录了作者实际的一次安装的过程,感觉真是不一般的琐碎,另外Scribe开源社区的版本已经是几年前的版本了,最新的维护信息一致没有看到,HDFS和Thrift的版本使用的都是比较旧的版本,考虑另

Windows下ruby语言安装教程_ruby专题

第一步:下载安装文件 官网下载地址:http://rubyinstaller.org/downloads 第二步: 双击安装 在安装的时候,请勾选Add Ruby executables to your PATH这个选项,添加环境变量,不然以后使用编译软件的时候会提示找不到ruby环境 第三步: 检测安装完成否

ruby gitlab 安装-gitlab安装出现的问题

问题描述 gitlab安装出现的问题 sudo -u gitlab bundle exec rake gitlab:app:setup RAILS_ENV=production 应答如下: rake aborted! SyntaxError: /home/gitlab/gitlab/vendor/bundle/ruby/1.9.1/gems/doorkeeper-2.1.3/lib/doorkeeper/engine.rb:4: unknown type of %string app.confi

vista安装iis7指南

IIS 7.0的十大改进: 1. 更简便的命令行配置功能 2. 更强的兼容性 3. 抛弃MetaBase 4. 集中管理 5. 委任配置 6. AppCmd 与其它新的管理手段 7. 失败请求追踪 8. 请求过滤 9. UNC 内容支持 10.动态内容输出缓存 那么,到底Windows Vista的哪些版本支持 IIS7呢?先来看看下图:   初用IIS7让人一头雾水,再也没有原来熟悉的属性窗体,替代的是一些很陌生的名词和操作方式.现在不评它这种改变是好是坏,先让它给我们跑起来吧: 首先是安装I