我正在使用 ruby-2.2.4 , Rails 4.2.5 和 MySQL 5.7.16 在我的Ruby on Rails应用程序中使用gem mysql2 。我创建了名为123_4
的数据库,并在/config/database.yml
中设置了数据库名称。
为什么我在尝试ActiveRecord::NoDatabaseError: Unknown database '1234'
时收到错误rake db:migrate
?
如果我尝试运行rake db:create
,将创建名为1234
的数据库。
如果我使用123_abc4
作为数据库名称,一切都很好。
我的database.yml
内容:
production:
adapter: mysql2
database: 123_4
host: localhost
username: user
password: "pass"
encoding: utf8
答案 0 :(得分:2)
标识符可以以数字开头,但除非引用可能不仅仅由数字组成。
因此,您可以使用123_abc4
,因为它包含字母。
如果它只包含数字,则需要引用它:'123_4'