原文:Rails access the pg db
在rails和ruby中,在我尋找要訪問postgresql時,總是發現所需要的庫為: gem install postgres-pr,gem install postgres,也就是使用postgres這個庫來完成與pg交的資料交換,當我採用ruby 直接使用 require 'postgres' 時發現最新的postgres要降版本才可以去ruby調用,具體的原因沒找到,因為降版本時根本沒辦法那個postgres庫的版本安裝起來,所以就查rails new test -d=postgresql產生的原始碼,才發現rails中用的是pg這個庫,故而直接用pg這個庫實現pg訪問和預存程序。
require 'pg'
class Testpg
# To change this template use File | Settings | File Templates.
#dbh = PGConn.connect("",5432,"postgres","400hao.cn","mytest_development")
conn = PG.connect( :dbname => 'mytest_development', :host => 'localhost', :port => 5432,:user => 'postgres' , :password => 'mypassword' )
res = conn.query("SELECT getallblogs(\'myref\');fetch all from myref;")
#res = conn.query("SELECT * FROM \"public\".blogs;")
#res = conn.query("")
#迴圈列出所有行和列
res.values.collect do |row|
puts row.collect {|col| "%-15s" % [col] }.join( '' )
end
#遍曆每條記錄的name值
res.each do |row|
puts row["name"]
end
res.clear
conn.close
end