在SQL中建表时用表达式(convert(varchar(10),getdate(),120))取得系统日期时间填入表中,在用SQL语句查询后绑定DataGrid后显示日期时间为:如2006-2-8 0:00:00,但在数据库里是2006-2-8,为什么会这样,我想要输出的是2006-2-8,不知道如何去实现呢?数据库字段取的数据类型为datatime

解决方案 »

  1.   

    Convet.ToDateTime(时间).ToString("d")
      

  2.   

    datagrid中:
    <asp:BoundColumn DataField="datatime1" DataFormatString="YYYY-MM-DD"></asp:BoundColumn>
      

  3.   

    1.<%# DataBinder.Eval(Container.DataItem, "qReferTime","{0:d}") %>
    2.在itemDataBinding事件中先判断列类型,如是时间,就转化
      

  4.   

    不行呀,这样的话,它就只显示yyyy-M-dd
      

  5.   

    你取出来的时候也用那个语句转一下就行了
    select convet(varchar(10),getdate(),120) 
      

  6.   

    我的数据库有两个字段ID,datatimes
    strSql="select ID,datatimes=convet(varchar(10),getdate(),120) from newtext";
    这样写是否正确??
    还是怎么写!
      

  7.   

    vs2005:
    <asp:BoundField DataField="Etd" HeaderText="预计开航日"  HtmlEncode="False" DataFormatString="{0:d}"  SortExpression="Etd" />
    vs2003
    <asp:BoundField DataField="Etd" HeaderText="预计开航日"  DataFormatString="{0:d}"  SortExpression="Etd" />select  convert(varchar(10),getdate(),120) as DateTime 是可以的。