데이터베이스를 처리해야하는 독립 실행 형 루비 스크립트를 작성해야합니다. 레일 3에서 아래 주어진 코드를 사용했습니다.
@connection = ActiveRecord::Base.establish_connection(
:adapter => "mysql2",
:host => "localhost",
:database => "siteconfig_development",
:username => "root",
:password => "root123"
)
results = @connection.execute("select * from users")
results.each do |row|
puts row[0]
end
그러나 오류가 발생합니다.
`<main>': undefined method `execute' for #<ActiveRecord::ConnectionAdapters::ConnectionPool:0x00000002867548> (NoMethodError)
내가 여기서 뭘 놓치고 있니?
해결책
denis-bu에서 솔루션을 얻은 후 다음과 같이 사용했고 그 역시 작동했습니다.
@connection = ActiveRecord::Base.establish_connection(
:adapter => "mysql2",
:host => "localhost",
:database => "siteconfig_development",
:username => "root",
:password => "root123"
)
sql = "SELECT * from users"
@result = @connection.connection.execute(sql);
@result.each(:as => :hash) do |row|
puts row["email"]
end
connection.execute것이 아니라connection().execute