2017-06-04 5 views
0

このクエリには何か問題がありますか?C#データベースへのアクセス構文エラー

"UPDATE tb_EmployeeMasterList SET [EmployeeID] = " + txt_EmpId.Text +", [LastName] = '" + txt_LN.Text + "', [FirstName] = '" + txt_FN.Text + "', [MiddleName] = '" + txt_MN.Text + "', [PositionOrSkill] = '" + txt_PorS.Text + "', [BasicSalary] = " + txt_Basic.Text + ", [Allowance] = " + txt_Allow.Text + ", [Total] = " + total + ", [EPAproposedBonus] = " + txt_Bonus.Text + ", [Remarks] = '" + txt_Remarks.Text + "' WHERE ([LastName] = '" + LN + "' AND [FirstName] = '" + FN + "');" 

私はそのクエリだけで構文エラーを取得しています。

+0

とは何ですか? – Rahul

+0

構文Updateステートメントで –

+1

が表示され、クエリの内容が表示されます。質問の投稿 – Rahul

答えて

0

不足している単一引用符のペアがあるようです:

"UPDATE tb_EmployeeMasterList SET [EmployeeID] = " + txt_EmpId.Text +", 

は次のようになります。total場合は括弧なし

"UPDATE tb_EmployeeMasterList SET [EmployeeID] = " + txt_EmpId.Text +", [LastName] = '" + txt_LN.Text + "', [FirstName] = '" + txt_FN.Text + "', [MiddleName] = '" + txt_MN.Text + "', [PositionOrSkill] = '" + txt_PorS.Text + "', [BasicSalary] = " + txt_Basic.Text + ", [Allowance] = " + txt_Allow.Text + ", [Total] = " + total + ", [EPAproposedBonus] = " + txt_Bonus.Text + ", [Remarks] = '" + txt_Remarks.Text + "' WHERE [LastName] = '" + LN + "' AND [FirstName] = '" + FN + "';" 
+0

同じエラーです。 EmployeeIDはデータベースの整数/数値なので、その上に一重引用符はありません。 –

+0

それは意味があります。 Rauhlが提案したように、ここで実行時に生成される生成されたSQL文字列を投稿できますか? –

+0

この質問を更新するのを忘れてしまいました。私がやったことは、データベースのEmployeeIDのデータ型をStringに変更することでした。私はちょうど疲れて、簡単な方法を望んでいた。ハハ! –

0

しようとすると、 LNFNの値は、テキストボックスではない変数からの値ですn構文はOKですが、Textboxは.Textを追加します。それ以外の場合は、構文エラーが返されます。

+0

でも同じエラーです。 –

0

をWHERE文を発射する

"UPDATE tb_EmployeeMasterList SET [EmployeeID] = '" + txt_EmpId.Text +"', 
+0

これらはクラス内の変数です。申し訳ありません、そのことを忘れてしまいました。それぞれに整数値と文字列値があります。 –

+0

テストしたところ、問題はありません。それでもデバッグし、生成されたSQL構文を共有します。 –

関連する問題