C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 38 を表示中)
■19553 / )  C# SQL Serverのスカラ変数エラー
□投稿者/ kimukimu (4回)-(2008/05/25(Sun) 22:00:45)

分類:[C#] 

またまた質問してしまい申し訳ありません。

環境ですが、
    VB2008 C#
    SQL Server 2005 SQL Server Management StudioExpress
を使用しています。

早速質問なのですが、C#にて以下の手順のアプリケーションを作成しました。

・新規更新ボタンを押下したとき、Textbox,Combboxに入力した値が
 SQL Server Management StudioExpressで作成したDBのテーブルM_Tableに反映される。

この時の記述したソースですが、

private void btnNew_Click(object sender, EventArgs e)
{
SqlConnection Conn = new SqlConnection(OLEDB_CONNECTION_STRING);
Conn.Open();
string newmcust = "insert into M_Cust(Cust_No,Cust_Name,Cust_Name_Ryaku,Repre_Post_No,"
+ "Repre_Address,Repre_Tel,Base_Keiyaku_Day,Futai_Day,Claim_Tig_Day,"
+ "Pay_Site,Hosoku,Abol_Flag,Abol_Reason)"
+ "values(@CNo,@CNa,@CNaR,@RePoNo,@ReAdd,@ReTel,@BaKeD,@FuD,@ClTD"
+ "@PSi,@Ho,@AbF,@AbRe)";

SqlCommand Cmd = new SqlCommand(newmcust, Conn);
Cmd.Parameters.Add("@CNo", SqlDbType.Char);
Cmd.Parameters.Add("@CNa", SqlDbType.NVarChar);
Cmd.Parameters.Add("@CNaR", SqlDbType.NVarChar);
Cmd.Parameters.Add("@RePoNo", SqlDbType.VarChar);
Cmd.Parameters.Add("@ReAdd", SqlDbType.NVarChar);
Cmd.Parameters.Add("@ReTel", SqlDbType.VarChar);
Cmd.Parameters.Add("@BaKeD", SqlDbType.DateTime);
Cmd.Parameters.Add("@FuD", SqlDbType.DateTime);
Cmd.Parameters.Add("@ClTD", SqlDbType.Decimal);
Cmd.Parameters.Add("@PSi", SqlDbType.Decimal);
Cmd.Parameters.Add("@Ho", SqlDbType.NVarChar);
Cmd.Parameters.Add("@AbF", SqlDbType.Char);
Cmd.Parameters.Add("@AbRe", SqlDbType.NVarChar);

Cmd.Parameters["@CNo"].Value = "N0004";
Cmd.Parameters["@CNa"].Value = txtCustName.Text;
Cmd.Parameters["@CNaR"].Value = txtCustRyaku.Text;
Cmd.Parameters["@RePoNo"].Value = txtPostNo.Text;
Cmd.Parameters["@ReAdd"].Value = txtAddress.Text;
Cmd.Parameters["@ReTel"].Value = txtAddress.Text;
Cmd.Parameters["@BaKeD"].Value = DateTime.Parse(txtBaseTeiketu.Text);
Cmd.Parameters["@FuD"].Value = DateTime.Parse(txtFutaiTeiketu.Text);
Cmd.Parameters["@ClTD"].Value = int.Parse(txtSime.Text);
Cmd.Parameters["@PSi"].Value = int.Parse(txtPaySite.Text);
Cmd.Parameters["@Ho"].Value = txtHosoku.Text;
Cmd.Parameters["@AbF"].Value = cmbAbolFlg.Text;
Cmd.Parameters["@AbRe"].Value = txtAbolRiyu.Text;

Cmd.ExecuteNonQuery();

Conn.Close();

}

です。

このコードをデバックしたときに、Cmd.ExecuteNonQuery();
で以下のエラーが発生しました。

・スカラ変数”@CITD@PSi"を宣言して下さい。

2つはテーブル上で CITD Decimal(2,0)
PSi Decimal(3,0)
で設定していますが、何か特別がパラメータで必要なのでしょうか?
私の調べ方も悪いと思うのですが、ネットで調べても分からないため
どなたかご教授のほどお願いいたします。

返信 編集キー/


管理者用

- Child Tree -