0

一直试图让它工作大约一个小时,但没有运气。我已将数据库从主机复制到本地计算机并更改了连接字符串,但由于某种原因,我不断收到此错误:

Could not find stored procedure

它连接到正确的数据库,当我通过管理工作室连接时,我可以执行存储过程,所以我不知道出了什么问题。我该如何调试?

谢谢。

这是代码,但请记住,这在托管服务器上运行良好:

private void openDatabaseConnection()
{
    myConnection = new SqlConnection(_connectionString);
    myCommand = new SqlCommand();
    myCommand.Connection = myConnection;
    myCommand.Parameters.Clear();
    myConnection.Open();
}

    using (myConnection)
    {
        openDatabaseConnection();
        using (myCommand)
        {
            myCommand.CommandText = "storedProcedureName";
            myCommand.CommandType = CommandType.StoredProcedure;

            using (myReader)
            {
                myReader = myCommand.ExecuteReader();

                myReader.Read();
                //Get Data
            }

        }

    }
4

1 回答 1

1

当您将数据库从一台服务器复制到另一台服务器时,您需要在目标服务器上设置数据库的所有者,如果您使用 SQL Server 帐户运行存储过程,则需要将数据库的所有者设置为该帐户.

要更改所有者,请执行以下步骤:

  1. 右键单击数据库,选择属性
  2. 转到文件选项卡
  3. 所有者文本框的右侧是一个按钮,单击它
  4. 从 SQL 帐户中选择您的应用程序用于访问数据库的帐户
于 2012-11-09T11:56:10.127 回答