0

以下のようなステートメントではなく、コードをより適切に文書化したいと思います。

pg_c = PGconn.connect("Main-my_db_lk", 5433, '', '', "report_center", "repozenter", "rp_23_xhg")

この声明の内容をどのように知ることができますか? 次のように各パラメータをメソッドに指定することは可能ですか: port => 5433, host=> xxx

接続文字列をどのように記述するのがよいでしょうか? 空の 3 番目と 4 番目のパラメータは何ですか?

ありがとう

4

1 に答える 1

2

配列形式で接続する引数は、host、port、options、tty、dbname、user、および password です。

3 番目の引数には、1 つ以上の実行時オプションを含めることができます。

[1] pry(main)> c = PG.connect( '', '', '-c search_path=public,test', '', 'test' )
=> #<PG::Connection:0x007f9e19c16d30>
[2] pry(main)> c.exec( 'show search_path' ).values
=> [["public,test"]]

4 番目の引数は使用されなくなりましたが、下位互換性のために残されています。

提案したように、接続時にオプションのハッシュを渡すこともできます。これは少し明確です。

conn = PG.connect( :dbname => 'test', :user => 'postgres' )

利用可能なキーはPG::Connection.new の API ドキュメントにリストされています。

于 2013-03-21T15:55:14.923 に答える