私はそれでテーブルおよび日時を持っているの形式は、次のとおりです日時をC#からSQLに正しく渡すには?
2011-07-01 15:17:33.357
私は.ToStringを(行うとき、私は私が形式でのDateTimeを取得していますオブジェクト上)のAC#の日時を取っています:
04/07/2011 06:06:17
私は(つまり、正しい日時を選択します)私は我々のコードであるSQLを実行すると、それは動作しませんので、私は正しくて、正しい日時を渡す方法を思ったんだけど。 SQLプロファイラを使用することはできません。
これはコードです:
//looks to if a user has had any activity in within the last time specified
public bool IsUserActivitySinceSuppliedTime(int userId, DateTime since)
{
//get everything since the datetime specified [usually 5 hours as this is
//how long the session lasts for
string sql = "SELECT * FROM tbl_webLogging WHERE userid = @userid AND DateAdded > @sinceDateTime";
SqlParameter sinceDateTimeParam = new SqlParameter("@sinceDateTime", SqlDbType.DateTime);
sinceDateTimeParam.Value = since;
SqlCommand command = new SqlCommand(sql);
command.Parameters.AddWithValue("@userid", userId);
command.Parameters.Add(sinceDateTimeParam);
using (SqlDataReader DataReader = GetDataReader(command))
{
if (DataReader.HasRows)
{
return true;
}
else
{
return false;
}
}
}
UPDATE *******************
私は、データ上で次のコマンドを実行しています
SELECT * FROM tbl_webLogging
WHERE userid = 1
AND DateAdded > '2011-07-01 07:19:58.000'
そして
SELECT * FROM tbl_webLogging
WHERE userid = 1
AND DateAdded > '04/07/2011 07:19:58'
一つは53 RECOを返します。 rdsは69レコードを返します。どうすればいいの?そして、C#からSQLにDateTime(04/07/2011 07:19:58)を渡すと、レコードがまったく表示されません!
テーブルの「DateAdded」列のタイプは何ですか?それはDateTimeですか?それとも何らかのvarchar? –
'[n] varchar(x)'のようなものではなく、 'DateAdded'の型が' datetime'であることを確認できますか? –
なぜ、C#datetimeは0レコードで戻ってくるのですか? (デバッガは'04/07/2011 07:19:58 'と言っています)@Marasのデータ型はdatetime .... – Exitos