gpt4 book ai didi

ruby - 尝试将 Ruby 连接到 SQL 服务器时出现 "Closed connection error"

转载 作者:数据小太阳 更新时间:2023-10-29 06:53:59 25 4
gpt4 key购买 nike

这是我用来连接到 SQL Server 2012 Express 的代码。我的文件名为 Connect.rb

require "rubygems"
require "tiny_tds"
client = TinyTds::Client.new(
:username => 'sa',
:password => 'sapassword',
:dataserver => 'localhost\SQLEXPRESS',
:database => 'ContactsDB')
result = client.execute("SELECT * FROM [Contacts]")

当我运行代码时,出现以下错误:

in 'execute' :closed connection (TinyTds::Error) from Connect.rb: in 'main'

当我用下面的代码替换上面的代码时,

client = TinyTds::Client.new(
:username => 'sa',
:password => 'sapassword',
:host => 'localhost',
:port => 1433,
:database => 'ContactsDB')

我收到以下错误:

in 'connect': Unable to connect: Adaptive server is unavailable or does not exist

导致此错误的原因是什么以及如何解决?

最佳答案

看起来配置没问题。 dataserver 是定义非默认实例的正确符号。

确保 TCP/IP 和命名管道协议(protocol)已启用(默认情况下在 SQL Express 上禁用)。同时启用正在运行的 SQL Server Browser 服务(默认情况下禁用)。

您可以在 Microsoft SQL Server/Configuration Tools 下开始菜单中的 Sql Server Configuration Manager 中找到它们。请务必在“客户端协议(protocol)”和每个列出的实例中启用它们。

此外,请确保您的防火墙允许连接 SQL 正在监听的端口(默认为 1433)。

无需指定端口,因为 Tiny-TDS 默认为 1433。您的第二个代码片段不包含实例。如果您在实例上设置了 SQL Express,则需要使用数据服务器而不是主机,并指定实例名称。

关于ruby - 尝试将 Ruby 连接到 SQL 服务器时出现 "Closed connection error",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12887907/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com