我想使用形式为
的连接字符串连接到PostgreSQL数据库
host=localhost user=x password=y dbname=z
这在传递给psql时可以正常工作
$ psql "host=localhost user=x password=y dbname=z"
以及传递给PG
宝石时
> PG.connect("host=localhost user=x password=y dbname=z")
但是当我尝试将其传递给续集时,它会失败
> Sequel.postgres(constr)
Sequel::DatabaseConnectionError: PG::ConnectionBad: could not connect to server: No such file or directory
如何使续集连接到数据库?
答案 0 :(得分:0)
您可以使用带有连接信息的字符串,例如:
conn_str = 'postgres://localhost/database_name?user=user&password=password'
DB = Sequel.connect(conn_str)
通过哈希检查how to open connections的续集文档
DB = Sequel.connect(
adapter: 'postgres',
host: 'localhost',
database: 'database_name',
user: 'database_user',
password: 'password'
)
那么您应该可以运行:
DB[:table_name].where(:attribute => 5000..10000)
或者您可以直接使用postgres方法:
DB = Sequel.postgres('my_db', :user => 'user', :password => 'password', :host => 'localhost')
检查devhints打开的连接快捷方式