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

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

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

Re[2]: C# SQL Serverのスカラ変数エラー


(過去ログ 38 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■19553 / inTopicNo.1)  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)
で設定していますが、何か特別がパラメータで必要なのでしょうか?
私の調べ方も悪いと思うのですが、ネットで調べても分からないため
どなたかご教授のほどお願いいたします。

引用返信 編集キー/
■19554 / inTopicNo.2)  Re[1]: C# SQL Serverのスカラ変数エラー
□投稿者/ やじゅ (409回)-(2008/05/25(Sun) 22:38:46)
やじゅ さんの Web サイト
No19553 (kimukimu さん) に返信
> このコードをデバックしたときに、Cmd.ExecuteNonQuery();
> で以下のエラーが発生しました。
>
> ・スカラ変数”@CITD@PSi"を宣言して下さい。
>
> 2つはテーブル上で CITD Decimal(2,0)
> PSi Decimal(3,0)
> で設定していますが、何か特別がパラメータで必要なのでしょうか?
>

string newmcust のSQL文をよーく確認しましょう。
@CITD@PSiの間に、カンマが無いのです。

ご教授→ご教示が適切かと
引用返信 編集キー/
■19561 / inTopicNo.3)  Re[2]: C# SQL Serverのスカラ変数エラー
□投稿者/ 片桐 (95回)-(2008/05/26(Mon) 01:01:11)
executenonquery処理でブレークポイントして、ウオッチ式で実行しようとしているsqlcommandオブジェクトのSQLstatmentを見てみてください。

こたえはやじゅさんのとおりです
引用返信 編集キー/
■19564 / inTopicNo.4)  Re[2]: C# SQL Serverのスカラ変数エラー
□投稿者/ kimukimu (5回)-(2008/05/26(Mon) 08:01:02)
No19554 (やじゅ さん) に返信
> ■No19553 (kimukimu さん) に返信
>>このコードをデバックしたときに、Cmd.ExecuteNonQuery();
>>で以下のエラーが発生しました。
>>
>>・スカラ変数”@CITD@PSi"を宣言して下さい。
>>
>>2つはテーブル上で CITD Decimal(2,0)
>> PSi Decimal(3,0)
>>で設定していますが、何か特別がパラメータで必要なのでしょうか?
> >
>
> string newmcust のSQL文をよーく確認しましょう。
> @CITD@PSiの間に、カンマが無いのです。
>
> ご教授→ご教示が適切かと

やじゅ様

ありがとうございます。本当にカンマがなかっただけでした・・。
また、日本語の指摘もしていただき助かります。
機会がありましたら、またお願い致します。


引用返信 編集キー/
■19565 / inTopicNo.5)  Re[3]: C# SQL Serverのスカラ変数エラー
□投稿者/ kimukimu (6回)-(2008/05/26(Mon) 08:02:13)
No19561 (片桐 さん) に返信
> executenonquery処理でブレークポイントして、ウオッチ式で実行しようとしているsqlcommandオブジェクトのSQLstatmentを見てみてください。
>
> こたえはやじゅさんのとおりです

片桐様

ありがとうございます。本当に助かります。
また、質問させていただくことがあると思いますので、
よろしくお願いいたします。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -