将Ruby连接到没有rails的Mysql

Rub*_*ner 17 ruby

如何在没有rails的情况下将Ruby连接到Mysql?我想使用Ruby standalone编写纯ruby代码来制作Web应用程序.没有抽象

Kas*_*ail 11

看这里

require "mysql"    # if needed

@db_host  = "localhost"
@db_user  = "root"
@db_pass  = "root"
@db_name = "your_db_name"

client = Mysql::Client.new(:host => @db_host, :username => @db_user, :password => @db_pass, :database => @db_name)
@cdr_result = client.query("SELECT * from your_db_table_name')
Run Code Online (Sandbox Code Playgroud)


Vod*_*dun 10

安装gem mysql(检查是否安装了libmysqlclient-dev).

mysql = Mysql.new(host, user, password, database)
mysql.query("SELECT ...")
mysql.close
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅文档


meg*_*gas 9

那么使用ActiveRecord ORM呢?

require 'mysql2'
require "active_record"

ActiveRecord::Base.establish_connection(
  :adapter  => 'mysql',
  :database => 'database',
  :username => 'user',
  :password => 'password',
  :host     => 'localhost')


class User < ActiveRecord::Base
end
Run Code Online (Sandbox Code Playgroud)


Art*_*nov 5

对于 mysql2:

1) yum install mysql-devel
2) gem install mysql2
Run Code Online (Sandbox Code Playgroud)

连接:

#!/usr/bin/env ruby
require "mysql2"

connect = Mysql2::Client.new(:host => "hostname", :username => "username", :password => "password", :database => "name_db")
result = connect.query("SELECT * FROM table_name")
result.each {  |x| puts x }
Run Code Online (Sandbox Code Playgroud)