ruby連線mysql Ruby連線Mysql

2021-10-17 13:21:44 字數 1878 閱讀 6675

ruby連線mysql

前面一章節我們介紹了 ruby dbi 的使用。這章節我們技術 ruby 連線 mysql 更高效的驅動 mysql2,目前也推薦使用這種方式連線 mysql。

安裝 mysql2 驅動:

gem install mysql2

你需要使用 –with-mysql-config 配置 mysql_config 的路徑,如: –with-mysql-config=/some/random/path/bin/mysql_config。

連線連線資料庫語法如下:

client = mysql2::client.new(:host => "localhost", :username => "root")

查詢results = client.query("select * from users where group='githubbers'")

特殊字元轉義

escaped = client.escape("gi'thu"bbe�r's")

results = client.query("select * from users where group='#'")

計算結果集返回的數量:

results.count

迭代結果集:

results.each do |row|

# row 是雜湊

# 鍵值是資料庫字段

# 值都是對應 mysql中資料

puts row["id"] # row["id"].class == fixnum

if row["dne"]  # 不存在則是 nil

puts row["dne"]

endend

例項#!/usr/bin/ruby -w

require 'mysql2'

client = mysql2::client.new(

:host     => '127.0.0.1', # 主機

:username => 'root',      # 使用者名稱

:password => '123456',    # 密碼

:database => 'test',      # 資料庫

:encoding => 'utf8'       # 編碼

results = client.query("select version()")

results.each do |row|

puts row

end以上例項執行輸出結果為:

連線選項

mysql2::client.new(

:host,

:username,

:password,

:port,

:database,

:socket = '/path/to/mysql.sock',

:flags = remember_options | long_password | long_flag | transactions | protocol_41 | secure_connection | multi_statements,

:encoding = 'utf8',

:read_timeout = seconds,

:write_timeout = seconds,

:connect_timeout = seconds,

:reconnect = true/false,

:local_infile = true/false,

:secure_auth = true/false,

:default_file = '/path/to/my.cfg',

:default_group = 'my.cfg section',

:init_command => sql

本文**:

ruby訪問mysql ruby訪問mysql

使用aptana radrails新建乙個ruby project,按照書上的 抄上去後 require rubygems require mysql def with db dbh mysql.real connect localhost root root test 3306 begin yie...

關於ruby連線oracle報錯

問題描述 測試執行時先報 warning nls lang is not set.fallback to us7ascii 報錯 ora 12154 tns could not resolve the connect identifier specified 執行指令碼 begin session ...

在Win32下Ruby連線Mysql

我看到論壇上的那個有點老了 1.首先安裝好mysql 最新的應該是5.0 2.使用 gem install mysql 命令遠端安裝mysql的ruby驅動,但是可惜的是,不要以為大功告成了,這樣的情況下你依然很有可能連不上mysql的。3.把mysql安裝目錄bin下的libmysql.dll拷貝...