Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 检索日期的SQL查询是否将时间添加到值?_Asp.net_Sql Server - Fatal编程技术网

Asp.net 检索日期的SQL查询是否将时间添加到值?

Asp.net 检索日期的SQL查询是否将时间添加到值?,asp.net,sql-server,Asp.net,Sql Server,我的SQL查询有点问题 我正在从我的SQL数据库中检索一个值,其中包含一个人被添加为life成员的日期。列类型是“date”,而不是varchar,因为如果它只是一个字符串,我无法按日期组织 “DateIncorted”的值只是一个简单的日期,例如“01/05/1963” 在VisualStudio的查询生成器中,我测试了我的SQL语句(如下所示),并完全按照我的要求显示 "SELECT [DateInducted], [Name] FROM [LifeMembers] ORDER BY [Da

我的SQL查询有点问题

我正在从我的SQL数据库中检索一个值,其中包含一个人被添加为life成员的日期。列类型是“date”,而不是varchar,因为如果它只是一个字符串,我无法按日期组织

“DateIncorted”的值只是一个简单的日期,例如“01/05/1963”

在VisualStudio的查询生成器中,我测试了我的SQL语句(如下所示),并完全按照我的要求显示

"SELECT [DateInducted], [Name] FROM [LifeMembers] ORDER BY [DateInducted] DESC"
但是,当加载网站时,该值为

5/26/2012 12:00:00 AM
时间是从哪里来的?有没有办法阻止这一切?我只需要日期

我认为这只是一个简单的疏忽,但谷歌搜索并没有提供正确的答案。根据W3学校网站,日期类型应该只给我日期

提前谢谢

编辑: 页面代码现在已附加

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<h2>Lifemembers</h2>
<table class="DataTable">
    <asp:Repeater ID="rptLifemembers" runat="server" DataSourceID="dsLifeMembers">
        <HeaderTemplate>
            <tr class="DataTableHeader">
                <td style="min-width:40%"><strong>Date Inducted</strong></td>
                <td style="min-width:60%"><strong>Member</strong></td>
            </tr>
        </HeaderTemplate>
        <ItemTemplate>
            <tr class="DataTableRow">
                <td style="min-width:40%"><strong><%#Eval("DateInducted")%></strong></td>
                <td style="min-width:60%"><%#Eval("Name")%></td>                
            </tr>
        </ItemTemplate>
    </asp:Repeater>
</table>
<asp:SqlDataSource ID="dsLifeMembers" runat="server" 
    ConnectionString="<%$ ConnectionStrings:SPEEDWAYConnectionString %>" 
    SelectCommand="SELECT [DateInducted], [Name] FROM [LifeMembers] ORDER BY [DateInducted1] DESC">
</asp:SqlDataSource>

终身成员
入职日期
成员


您可以在查询中将日期转换为varchar,也可以在asp.net中格式化输出

如果选择在查询中执行此操作,则可以使用函数Convert:


选择CONVERT(varchar(50),[DateImported],101)DateImported,[Name]FROM[LifeMembers]ORDER BY[DateImported]DESC将格式字符串添加到绑定表达式中:


SQL中的
datetime
数据类型和CLR中的
Date
类型始终同时包含日期和时间。为了在转换为字符串时显示一个或另一个,而不是两个,您需要使用格式字符串或
Date
内置的字符串转换函数,例如
ToSortDateString()

您必须显示asp输出代码。数据库中的日期字段没有时间值。它必须是一个日期时间,或者以某种方式转换为一个日期时间。这几乎肯定是前端的格式问题。更改显示格式,您就可以开始了。Sql日期很可能被加载为.Net
DateTime
。在页面上使用可控制输出。刚刚添加的ASP页面代码FYI“101”是根据数据类型确定的输出“样式”。就我个人而言,我认为转换值以显示在页面上或尽可能接近表示层更为简洁。