尝试连接到外部数据库以运行报告时,我收到以下错误。这是一个sql server 2008数据库。
无法加载'active_record / connection_adapters / sqlserver_adapter'。确保config / database.yml中的适配器有效。如果您使用“mysql”,“mysql2”,“postgresql”或“sqlite3”以外的适配器,请将必要的适配器gem添加到Gemfile中。
我在我的gem文件中添加了以下行并运行了bundle install
gem 'tiny_tds'
gem 'activerecord-sqlserver-adapter', '4.2.10'
此外,这是正常集合之外的其他数据库。
npr:
adapter: sqlserver
host: *****
port: 1433
database: *****
username: *****
password: *****
encoding: utf8
我还没有找到一个很好的答案,为什么目前无法正常工作。
修改
数据库确实在rails控制台中安装了gem文件,并安装在gemfile.lock中。
答案 0 :(得分:0)
我首先尝试在ruby(而不是rails)控制台中使其与tinyTDS一起使用:
client = TinyTds::Client.new username: 'sa', password: 'secret', host: 'mydb.host.net'
之后,您将知道问题是来自数据库设置(在您的情况下为MSSQL)还是来自您的Rails配置。请在评论中回复我们。