发生错误 1042:连接超时已过期
Error 1042 has occurred: Connect Timeout expired
我正在尝试使用以下连接字符串连接到 SQL 服务器,但出现“错误连接超时已过期”
我试过远程登录,连接成功。但是,从代码来看,即使我尝试指定默认端口也无法连接。
有什么地方做错了吗?提前谢谢你。
string _connectionString = @"Server=myIP,1433;Database=myDB;User Id=myID;Password=myPass;";
using (MySqlConnection con = new MySqlConnection(_connectionString))
{
con.Open();
string sqlQuery = "SELECT * FROM Inventory";
using (MySqlCommand cmd = new MySqlCommand(sqlQuery, con))
{
MySqlDataReader result = cmd.ExecuteReader(CommandBehavior.CloseConnection);
while (result.Read())
{
}
con.Close();
}
}
Telnet 结果
如果您有 SQL 服务器的实例,请使用反斜杠 "Server=myIP\sqlexpress"
。
如果服务器是您的本地计算机,请改用 Windows Authentication
:
"Server= localhost; Database= myDB; Integrated Security=True;"
或者您可以使用 App.Config
配置您的 SQL 连接`,这就是我使用 Windows 身份验证而不是用户名和密码配置我的方式。首先,将 App.config 添加到您的应用程序。然后添加:
<connectionStrings>
<add name="SqlConnectionString" connectionString="Data Source=localhost;Initial Catalog=myDB;Integrated Security=true"/>
</connectionStrings>
在你的节目中:
string _connectionString = string connString = ConfigurationManager.ConnectionStrings["SqlConnectionString"].ConnectionString;
using (con = new SqlConnection(_connectionString))
{
string sqlQuery = "SELECT * FROM Inventory";
SqlCommand cmd = new SqlCommand(sqlQuery, con)
con.Open();
SqlDataReader result = cmd.ExecuteReader();
while (result.Read())
{
}
con.Close();
}
别忘了加上using directive
:
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
我正在尝试使用以下连接字符串连接到 SQL 服务器,但出现“错误连接超时已过期”
我试过远程登录,连接成功。但是,从代码来看,即使我尝试指定默认端口也无法连接。
有什么地方做错了吗?提前谢谢你。
string _connectionString = @"Server=myIP,1433;Database=myDB;User Id=myID;Password=myPass;";
using (MySqlConnection con = new MySqlConnection(_connectionString))
{
con.Open();
string sqlQuery = "SELECT * FROM Inventory";
using (MySqlCommand cmd = new MySqlCommand(sqlQuery, con))
{
MySqlDataReader result = cmd.ExecuteReader(CommandBehavior.CloseConnection);
while (result.Read())
{
}
con.Close();
}
}
Telnet 结果
如果您有 SQL 服务器的实例,请使用反斜杠 "Server=myIP\sqlexpress"
。
如果服务器是您的本地计算机,请改用 Windows Authentication
:
"Server= localhost; Database= myDB; Integrated Security=True;"
或者您可以使用 App.Config
配置您的 SQL 连接`,这就是我使用 Windows 身份验证而不是用户名和密码配置我的方式。首先,将 App.config 添加到您的应用程序。然后添加:
<connectionStrings>
<add name="SqlConnectionString" connectionString="Data Source=localhost;Initial Catalog=myDB;Integrated Security=true"/>
</connectionStrings>
在你的节目中:
string _connectionString = string connString = ConfigurationManager.ConnectionStrings["SqlConnectionString"].ConnectionString;
using (con = new SqlConnection(_connectionString))
{
string sqlQuery = "SELECT * FROM Inventory";
SqlCommand cmd = new SqlCommand(sqlQuery, con)
con.Open();
SqlDataReader result = cmd.ExecuteReader();
while (result.Read())
{
}
con.Close();
}
别忘了加上using directive
:
using System.Data;
using System.Data.SqlClient;
using System.Configuration;