Ruby

индекс
128,98

Mysql2

Mysql2 — современная, простая и очень быстрая Mysql библиотека (GEM) для Ruby.

API состоит из 2-х классов:


  1. Mysql2::Client — соединение с базой
  2. Mysql2::Result — результат запроса включающий в себя модуль Enumerable.


Установка:


gem install mysql2

Использование:


Соединение с базой:

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

Потом запрос к базе:

results = client.query("SELECT * FROM users WHERE group='githubbers'")

Нужно что то экранировать сначала?

escaped = client.escape("gi'thu\"bbe\0r's")
results = client.query("SELECT * FROM users WHERE group='#{escaped}'")


И в конце, перебор результатов:

results.each do |row|
# ковертация строки в Hash
# гду ключи это имена полей
end


Или вы можете сделать тоже самое проще:

client.query("SELECT * FROM users WHERE group='githubbers'").each do |row|
#работаем со строкой (row) в блоке
end
+3
18 августа 2010, 16:32
8

комментарии (10)

–1
galk_in #
А где кат?!
+1
shaliko #
Добавил.
+2
ignar #
Я бы с удовольствием увидел бенчмарки с его участием и сравнением с mysql gem'ом в Rails =)
0
shaliko #
Есть на Github — я давал ссылку в посте.

0
ignar #
Ого, спасибо.
+2
mpetrunin #
Раз уж вы занялись переводом странички проекта на github, то уж стоило бы делать чуть более полно. Например перевести почему это быстрый gem, в чём ключевые отличия.

К примеру, можно указать, что там отсутствуют баги кодировки обычного mysql gem'а, при работе с ruby 1.9.

Вот тут: stackoverflow.com/questions/3001243/ruby-rails-mysql2-gem-does-somebody-use-this-gem-is-it-stable автор mysql2 отвечает на вопрос, стоит ли использовать mysql2
–1
shaliko #
Я не ставил перед собой целей полностью переводить README.

Моей задачей было познакомить Ruby сообщество с интересным GEM.
–1
Source #
Моей задачей было познакомить Ruby сообщество с интересным GEM.

Да, бросьте. С этим гемом Ruby сообщество уже познакомил DHH в сообщении о выходе RoR 3 RC: weblog.rubyonrails.org/2010/7/26/rails-3-0-release-candidate
Обратите внимание на пункт «Support for the MySQL2 gem, which will take care of MySQL encoding issues on Ruby 1.9.2.»
Так что со знакомством припозднились недельки на три, а для обзорной статьи маловато.
0
mpetrunin #
Раз уж вы занялись переводом странички проекта на github, то уж стоило бы делать чуть более полно. Например перевести почему это быстрый gem, в чём ключевые отличия.

К примеру, можно указать, что там отсутствуют баги кодировки обычного mysql gem'а, при работе с ruby 1.9.

Вот тут: stackoverflow.com/questions/3001243/ruby-rails-mysql2-gem-does-somebody-use-this-gem-is-it-stable автор mysql2 отвечает на вопрос, стоит ли использовать mysql2
–1
mpetrunin #
Блин, глюки отправки :(

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.