我正在开发一个小型Ruby应用程序,我想与PostgreSQL和MySQL一起工作。
Ruby / DBI似乎是最简单的方法;我不想安装像ActiveRecord那样的重量级ORM。不幸的是,如果您已经拥有数据库,Ruby / DBI似乎可以简化连接,但我无法弄清楚如何连接到没有DB的服务器并发出CREATE DATABASE
命令。
到目前为止,我有这个:
dbh = DBI.connect("DBI::Pg", "username", "password")
但是当我尝试连接时出现此错误:Invalid Data Source Name
。知道我能做什么吗?
另外,如果我可以获得'无数据库句柄',我想知道是否有select_db
的DBI方法并放入数据库以执行进一步的查询。这是次要的,我可以没有它。
答案 0 :(得分:1)
您应该拥有postgres
数据库,以便尝试:
dbh = DBI.connect('dbi:Pg:postgres', 'username', 'password')
然后从那里执行CREATE DATABASE
。此外,connect
的第一个参数应该是:
dbi:Driver:database_conn_args
其中Driver
是数据库驱动程序(区分大小写),database_conn_args
通常是数据库名称。