1

以下のように、SQL を使用して C# で SQL-Server からデータを取得しています。

var cmd = new SqlCommand(
    "select *, replace(trucknocn, char(10), '') trucknocn1 from deliverylist  where deliverydate=@scantime", sqlCon);             
cmd.Parameters.Add("@scantime", SqlDbType.VarChar, 10).Value
    = Calendar1.SelectedDate.ToString("yyyy-MM-dd");            

da.SelectCommand = cmd;

私の問題は、クライアント アプリケーション マシンの地域設定の問題を回避するためにこれを行うのが正しいかということです。地域設定の問題を完全に回避するためにできることはありますか?

ありがとう

4

2 に答える 2

5

ですか?deliverydate_ varchar私はそうは思わない。パラメータを次
のように追加できます。DateTime

cmd.Parameters.Add("@scantime", SqlDbType.DateTime).Value = Calendar1.SelectedDate;

次に、文字列->日付->文字列の変換がないため、地域設定の問題はすべてなくなり、文字列表現だけでなく実際の日付値に基づいて比較が行われます。

于 2013-04-12T10:21:09.450 に答える