&pgid();
#contents
ActiveRecordをライブラリとして利用するにはまず、
require 'rubygems'
require 'active_record'
ActiveRecord::Base.establish_connection(
:adapter => 'mysql',
:host => 'localhost',
:username => 'DB接続アカウントのID',
:password => 'DB接続アカウントのPW',
:database => 'DB名',
:socket => '/var/lib/mysql/mysql.sock'
)
としてDBへの接続を確立します(この例ではMySQLへの接続を例にとっています)。
socketの指定がないと
No such file or directory - /tmp/mysql.sock (Errno::ENOENT)
のようなエラーが出る場合があるので環境のsocketのパスを指定します。
次に、ActiveRecordで扱いたいテーブルが
CREATE TABLE some_records (
id integer(11) NOT NULL auto_increment,
userid integer(11) NOT NULL,
contents text NOT NULL,
PRIMARY KEY (id)
) TYPE=MyISAM;
であるとすると、スクリプトには続いて
class SomeRecord < ActiveRecord::Base
end
というクラスを定義します。
(some_recordsというテーブル名なのでSomeRecordというクラス名になります)
後は、この定義したクラスを使ってテーブルを操作します。
# レコードをカウント
total_count = SomeRecord.count
# ユニークユーザIDによるカウント
user_count = SomeRecord.count(:distinct => true, :select => 'userid')
*** 参考 [#t0316840]
- [[普通にActiveRecordしてみた>http://d.hatena.ne.jp/okazuki/20070708/1183905280]]
- [[Class ActiveRecord::Base>http://railsapi.masuidrive.jp/class/ActiveRecord%3A%3ABase]]
#blikifooter(進地)
tag: [[Ruby on Rails>tag/Ruby on Rails]], [[ActiveRecord>tag/ActiveRecord]]