0

我在 Visual Studio(SQL Server Compact Edition)中有一个本地数据库,其中有一个包含几列的表。其中一列具有 datatype DateTime。当我插入一行时,我DateTime.Now在 C# 中使用添加日期/时间值。

当我做一个

SELECT * FROM ...

我看到 DateTime 格式是7-5-2012 11:41.

但现在我需要使用 where 子句进行选择查询,以便结果介于特定日期之间。我找不到在日期/时间之间进行过滤的方法,当我使用该DateTime.Now函数设置之间时,我得到了 0 行。但是当我通过设置手动设置之间

WHERE date BETWEEN '7-5-2012 00:00' AND '8-5-2012 00:00'

即便如此,我也得到了 0 个值。

我也尝试过这样做,SqlCeCommands但给出了同样的问题,0 行返回。

有谁我做错了什么或我如何让它工作?

先感谢您!

4

2 回答 2

2

可能是你的日期格式错误,你应该使用查询命令参数:

command.CommandText = "SELECT * FROM ... WHERE date BETWEEN @lowb AND @highb";
command.Parameters.Add( "@lowb", SqlDbType.DateTime, new DateTime(...));
command.Parameters.Add( "@highb", SqlDbType.DateTime, new DateTime(...));
于 2012-05-07T10:23:24.690 回答
0

试试这个:

"..spRis_GetListaDocs @DateFilter = '" + Convert.ToDateTime(txtDate.Text).ToString("yyyy-MM-dd") + "'"
于 2012-05-07T11:13:01.283 回答