2017-02-22 9 views
-1

私はgradプロジェクトのためにC#とSQLデータベースの更新ステートメントをプログラミングしていましたが、私は更新ステートメントを完了して設定していたときに奇妙な問題に直面するまで、エラーをキャッチするための条件ならば、msg文字列が割り当てられていないローカル変数エラーC#データベース更新エラー

使用はしかし、ここで以下のコードだ私に奇妙なエラーを与えています。

string msg; 
if (MessageBox.Show("Are you sure you want to update book info?", "Updating", MessageBoxButtons.YesNo) == DialogResult.Yes) 
{ 
    n.RunDml("Update into Book Values (" + txtID.Text + ",'" + txtName.Text + "','" + txtCond.Text + "','" + txtQuant.Text + "','" + txtSect.Text + "')"); 
    if (msg == "ok") 
    { 
     MessageBox.Show("Updating successfully done! ", "Updating"); 
    } 
    else 
    { 
     MessageBox.Show(msg); 
    } 
} 

ありがとう。

+1

に値を割り当てることが予想される場合に依存します。そうしないでください。 (上記のif文でそれを使用すると、それはユニット化されてしまいます。あなたはそれを行うことはできません;あなたは ' 'string msg;と' 'if(msg ==')との間で起こる魔法は、どこで '' ok ''と同じになると思いますか?(あなたの更新文も間違っていますその構文は無効です。Google * Cのシャープなパラメータクエリ*。) –

+0

あなたはどのIDEを使用していますか?正確に何をどこに表示する必要がありますか? – Crowcoder

+0

私はInsertステートメントでこれを使用しました。初心者すべて.. @KenWhite –

答えて

1

msgの値をどこに設定していないので、そのエラーが何であるかをチェックすることはできません。

多分あなたはこれを行うことを意味しましたか?

msg = n.RunDml("Update into Book Values (" + txtID.Text + ",'" + txtName.Text + "','" + txtCond.Text + "','" + txtQuant.Text + "','" + txtSect.Text + "')"); 

しかし、それはあなたがあなたが割り当てられていないローカル変数を使用しているmsg

+0

私が作りたいと思っているのは、何が起こるか私に見せてもらうことです。私はそれを挿入ステートメントで使っています。そして、エラーがなくても大丈夫です。 –

+0

@Morgan - そのコメントは意味をなさない...上記の私の答えとみんなのコメントを読んでください。問題は 'msg'ですが、宣言しても値は決して割り当てられません。値を代入するまでは、そのインスタンスの比較によってエラーが発生します。 – Igor

+0

ああ!本当に申し訳ありません!私は今気づいた!私の悪い!非常に申し訳ありません!、あなたの通知のおかげで、本当に感謝! :) –