我一直看到此错误,并且无法连接到远程服务器上的数据库。
我得到了一个到数据库的连接字符串,如下所示:
data source=qsss.gar.de\SQL2012,3000;initial catalog=City;persist security info=True;user id=user_me;password=user_me##2009;
现在,我基于该连接字符串创建了一个
database.yml
文件,如下所示:development:
adapter: 'sqlserver'
host: 'qsss.gar.de\SQL2012,3000'
port: 1433
database: 'City'
username: 'user_me'
password: 'user_me##2009'
当我尝试运行服务器时,它总是以打我,在配置文件错误中找不到服务器名称。
opts[:port] ||= 1433
opts[:dataserver] = "#{opts[:host]}:#{opts[:port]}" if opts[:dataserver].to_s.empty?
connect(opts) // ERROR AT THIS LINE
end
def tds_73?
请尝试帮助我弄清楚这是什么问题?
更新:
我可以使用
SQLPro for MSSQL
向导使用完全相同的连接参数连接到服务器:picture
它可以从向导中使用,但不能从使用TinyTDS的代码中使用!
最佳答案
我遇到了同样的问题,可以通过将config.yml文件中的“主机” 参数更改为“数据服务器” 来解决此问题。
另外,如果运行应用程序的服务器未放置服务器的IP,则还要检查它是否能够解析数据库服务器的DNS名称。
我还使用Microsoft SQL数据库,并且在更改上述文件后,只能解决“TinyTds::错误:在配置文件中找不到服务器名称” 错误。