-8

我使用以下函数通过存储过程在数据库中插入值。但我有例外sqlConnection.Open();如何解决这个问题?

  try
        {
            string dbConnectionString = "something";
            SqlConnection sqlConnection = new SqlConnection(dbConnectionString);
            SqlCommand command = new SqlCommand("sp_Test", sqlConnection);
            command.CommandType = CommandType.StoredProcedure;
            command.Parameters.AddWithValue("@id ", SqlDbType.Int).Value = TextBox1.Text;
            command.Parameters.AddWithValue("@FullName", SqlDbType.VarChar).Value = TextBox2.Text;
            sqlConnection.Open();
            command.ExecuteNonQuery();
            sqlConnection.Close();
        }
        catch (SqlException ex)
        {
            Console.WriteLine("SQL Error" + ex.Message.ToString());

        }
4

1 回答 1

1

好吧,你得到的错误与存储过程没有任何关系,但我可以回答“如何解决这个问题?”的问题。在您遇到的异常情况下。

首先,我希望您没有使用“某物”作为您的 sql 服务器的实际连接字符串。您应该使用真正的连接字符串。以下是一些可用于连接 SQLServer 的各种示例 - http://www.connectionstrings.com/sql-server-2005

使用上述网址中的第一个示例

Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;

您需要将“myServerAddress”更改为服务器的 IP 地址或主机名。这可能是“localhost”,也可能是您在网络上的另一台计算机。将“myDataBase”更改为您创建的数据库的名称,并确保该名称与可能配置为区分大小写的数据库完全匹配。最后将“myUsername”和“myPassword”更改为您在Sql Server Management Studio下访问服务器时使用的用户名和密码。

现在,假设您实际上已经完成了上述操作,您可以采取以下步骤来调试连接问题。

  1. Ping 计算机 - 从命令提示符键入“ping servername”,其中 servername 是运行 SQL Server 的服务器的名称或 IP 地址。如果您没有得到服务器的响应,那么您需要调试本地网络。

  2. 如果服务器在本地运行,请尝试使用“。” 对于“myServerAddress”值。如果是 sqlserver express 版本,请使用 express 格式 - ".\SQLExpress" 或 "myServerAddress\SQLExpress"

  3. 如果 SQL Server 在另一台计算机上运行,​​请尝试此 kb 文章中“更多信息”部分下的三个链接中的每一个 - http://support.microsoft.com/kb/914277 这将确保支持远程连接。

但真正的问题是您无法连接到数据库。我建议首先搜索该问题的解决方案。或者也许在另一个问题中在 SO 上提供有关您的设置的更多信息。

希望有帮助,-马库斯

于 2012-07-05T19:49:05.847 回答