-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

上記の URL の最初の例を使用する

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 Edition の場合は、高速形式 (".\SQLExpress" または "myServerAddress\SQLExpress") を使用します。

  3. SQL Server が別のコンピューターで実行されている場合は、この KB 記事の「詳細情報」セクションの下にある 3 つのリンクをそれぞれ試してください - http://support.microsoft.com/kb/914277 これにより、リモート接続が確実にサポートされます。

しかし、本当の問題は、データベースに接続できないことです。最初にその問題の解決策を探すことをお勧めします。または、別の質問で SO のセットアップに関する詳細情報を提供してください。

お役に立てば幸いです - マーカス

于 2012-07-05T19:49:05.847 に答える