我想更好地记录我的代码,而不是像下面这样声明:
pg_c = PGconn.connect("Main-my_db_lk", 5433, '', '', "report_center", "repozenter", "rp_23_xhg")
我怎么知道这个声明是什么?是否可以像这样指出方法的每个参数:port => 5433, host=> xxx
如何更好地编写连接字符串?什么是空的第三个和第四个参数?
谢谢
我想更好地记录我的代码,而不是像下面这样声明:
pg_c = PGconn.connect("Main-my_db_lk", 5433, '', '', "report_center", "repozenter", "rp_23_xhg")
我怎么知道这个声明是什么?是否可以像这样指出方法的每个参数:port => 5433, host=> xxx
如何更好地编写连接字符串?什么是空的第三个和第四个参数?
谢谢
以数组形式连接的参数是:主机、端口、选项、tty、dbname、用户和密码。
第三个参数可以包含一个或多个运行时选项,例如,
[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 文档中列出了可用的密钥。