2013-05-06 103 views
0

你好我想在日期时间数据类型在sql server中保存一个日期。在搜索屏幕中,我将参数作为唯一的日期。如何获取数据库日期时间值仅作为日期?

那么我该如何设置查询?我的代码是:

<asp:SqlDataSource 
    ID="SqlDataSource1" runat="server" 
    ConnectionString="<%$ ConnectionStrings:TAXIConnectionString %>" 
    SelectCommand="SELECT [TripId] FROM [BookingMaster] 
       WHERE (([PickupDateTime] = @PickupDateTime or @PickupDateTime is null))" 
    CancelSelectOnNullParameter="False"> 
    <SelectParameters> 
     <asp:ControlParameter ControlID="txtBookingDate" 
       Name="PickupDateTime" PropertyName="Text" Type="String" 
       ConvertEmptyStringToNull="true" /> 
    </SelectParameters> 
</asp:SqlDataSource>  
+0

+1对'提前帮助我' – phadaphunk 2013-05-06 17:17:52

+0

您使用的是哪种DB提供程序? – mclark1129 2013-05-06 17:21:37

+0

sql server数据库 – Saranya 2013-05-06 17:23:41

回答

3

如果您使用SQL2008或更高版本可以使用DATE类型。你的选择命令看起来像。

SelectCommand="SELECT [TripId] FROM [BookingMaster] 
       WHERE ((cast([PickupDateTime] as date) = @PickupDateTime or @PickupDateTime is null))" 
+0

感谢它的工作... – Saranya 2013-05-06 17:34:15

+0

如果你更熟悉'CONVERT'函数有相同的执行计划:WHERE((convert(date,PickupDateTime)= @PickupDateTime或@PickupDateTime为null) )' – 2013-05-06 19:34:25

相关问题