2014-02-13 46 views
0

我做了一個ruby腳本,用於分析ruby數據結構中的很多文件,例如哈希。什麼是使用ruby腳本在MySQL中插入數據的最簡單方法

我需要將所有這些數據插入MySQL數據庫。

我發現了什麼:

mysql2

tmtm

dbi

有沒有做到這一點一些原生的方式?

感謝所有幫助

編輯

比方說,我有100項這樣的哈希:

hash = {"a" => 1, "b" => 2 ..., "c" => 100} 

我想在所有的MySQL創建一個表這一列。我害怕Active Record會很難做到這一點。

PS:我不是使用Rails,只是一個簡單的Ruby腳本

+0

那麼ActiveRecord的是明顯的答案,但我不知道爲什麼它是不是你? –

+0

我在考慮不要使用ORM。我更喜歡使用純SQL。但我會嘗試一段時間的活躍記錄。 – coffee

回答

3

如果我是你,我寧願ActiveRecord的,因爲我沒有雜波我的代碼有很多的SQL語句。除了主動記錄之外,使生活更輕鬆。

設置它這樣

require 'active_record' 

ActiveRecord::Base.establish_connection( 
:adapter => "mysql2", 
:host => "host", 
:username=>"user", 
:password=>"user", 
:database => "your_db" 
) 

然後使用表這樣

class SingularTableName < ActiveRecord::Base 
    has_many :table_relationship 
end 

於是這樣的查詢

SingularTableName.all #=> all records 
SingularTableName.first #=> first record 
SingularTableName.where("query") 
SingularTableName.create("...) #=> create a record/row 

您可以在這裏找到更多的方法=>http://api.rubyonrails.org/classes/ActiveRecord/Base.html

更新:

爲了克服複數表名和默認的主鍵,你可以使用

class AnyName < ActiveRecord::Base 
    self.table_name = 'your table name' 
    self.primary_key = 'your primary key' 
    ... 
end 
+0

我發現的所有例子都是使用Rails。你可以請一些例子使用一些表格來幫助我。它沒有必要的使用關係。只需插入數據。 – coffee

+0

工程。我遇到過一些問題,比如使用名爲'type'的列會導致某些東西被用作繼承的東西。無論如何..感謝花花公子 – coffee

+0

...和多元化。 =) – coffee

相關問題