Ruby中採用PG訪問Postgresql表及function

來源:互聯網
上載者:User

原文: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

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.