我有一个预先存在的 sqlserver 数据库“MyDatabase”,其中填充了数据。在这个数据库中,我有两个模式,“dbo”和“Master”。
dbo 是默认模式并包含表:
- 所有者
- 地点
主模式包含表:
- 银行
- 区
表 OWNER、LOCATION、BANK 和 ZONE 包含多个属性。
我已经初始化了一个 RoR 服务器并验证了是否安装了适当的 gem(activerecord、tiny_tds、activerecord-sqlserver-adapter),以及在 database.yml 中提供了正确的信息,以便可以建立连接。我~能够连接到数据库。我能够添加和删除表格。
对我来说不寻常的是,当我运行时rake db:migrate
,只有来自 dbo 模式的属性会在我的 RoR 服务器的 schema.rb 文件中自动初始化:
ActiveRecord::Schema.define(:version => 20131014210258) do
create_table "BANK", :id => false, :force => true do |t|
end
create_table "LOCATION", :id => false, :force => true do |t|
t.string "VarA", :limit => 50
t.string "VarB", :limit => 50
t.decimal "VarC", :precision => 28, :scale => 0
t.integer "VarD"
t.string "VarE", :limit => 500
end
create_table "OWNER", :id => false, :force => true do |t|
t.string "VarF", :limit => 50
t.string "VarG", :limit => 50
t.string "VarH", :limit => 50
t.string "VarI", :limit => 50
t.string "VarJ", :limit => 50
end
create_table "ZONE", :id => false, :force => true do |t|
end
end
为什么不会为我的主模式中的表自动填充属性?对于这个问题,我已经大大缩小了我的数据库的范围......实际上有几十个表,每个表都有几十个属性,所以手动完成工作真的不是一个选择。
有没有办法分配 ActiveRecord 将默认为其搜索和生成属性的特定模式?
帮助!& 先感谢您!