如何使用Ruby的DBI创建数据库?

时间:2011-05-18 00:01:53

标签: ruby database postgresql dbi

我正在开发一个小型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方法并放入数据库以执行进一步的查询。这是次要的,我可以没有它。

1 个答案:

答案 0 :(得分:1)

您应该拥有postgres数据库,以便尝试:

dbh = DBI.connect('dbi:Pg:postgres', 'username', 'password')

然后从那里执行CREATE DATABASE。此外,connect的第一个参数应该是:

  

dbi:Driver:database_conn_args

其中Driver是数据库驱动程序(区分大小写),database_conn_args通常是数据库名称。