テキストボックスが空の場合、SQL テーブルの日時フィールドを NULL に設定しようとしていますが、これを機能させることができないようです。
string EndDate = "";
if (String.IsNullOrEmpty(EndDateTxtBox.Text.Trim()))
{
EndDate = null;
}
else
{
EndDate = EndDateTxtBox.Text;
}
var sql = String.Format(@"UPDATE Test SET StartDate='{0}',
EndDate='{1}' WHERE ID = '{2}'",
StartDateTxtBox.Text, EndDate, id);
これを実行してブレークポイントを配置すると、「var sql」に対して次のようになります。
"UPDATE Test SET StartDate='5/23/2013', EndDate=" WHERE ID = '19'"
SQL文字列から ' を削除しようとしましたが、それもうまくいきませんでした。助言がありますか?
編集: SQL インジェクションを防止することの重要性は理解していますが、これは私の使用のみを目的とした内部 Web サーバー上のページであり、公開されていません。個人的なことを追跡するのに役立ちます。