public DataSet GetDataDA(string strDate)
{
string strSql = "select std,fltid,ac from legs where std ='"+strDate+"' and depstn='HHA'";//查询语句
return clsCommon.GetData(strConn,strSql);//返回信息
}

std 是一个DataTime类,例2004-9-12 08:20:20 
参数strDate是一个string 类,如2004-9-12 现怎样将字段std变换成,std ='"+strDate+"'成立的形式!
各位大哥帮下忙,在线等,急!就70分了!全给!

解决方案 »

  1.   

    std ='"+strDate+" 00:00:00"+"'
      

  2.   

    写成这样应该可以了:string strSql = "select std,fltid,ac from legs where std =Convert(datetime,"+strDate+") and depstn='HHA'";
      

  3.   

    写成这样应该可以了:string strSql = "select std,fltid,ac from legs where std =Convert(datetime,'"+strDate+"') and depstn='HHA'";
      

  4.   

    "where convert(nvarchar(10),dateField,121)= convert(nvarchar(10),'"+dateFiel + "',121)";
      

  5.   

    std,fltid,ac from legs where DATEDIFF(day, std, convert(datatime,'"+strDate+"'))=0
      

  6.   

    where DATEDIFF(day, std, convert(datatime,'"+strDate+"'))=0
      

  7.   

    string strdate = System.DateTime.Now.ToString("yyyy-MM-dd");
      

  8.   

    std =DateTime.Parse(strDate).ToLongDateString()
    这招准行我用过了
    成了给分噢!
      

  9.   

    string strdate = System.DateTime.Now.ToString("yyyy:MM:dd");
      

  10.   

    若想转换成2004-05-01格式把ToLongDateString改成ToShortDateString即可;
    上一个是把字符串转换成2004-05-01 00:02:33
      

  11.   

    利用string.Format();如下:
    string strSql = string.Formart("select std,fltid,ac from legs where std =
    '{0:yyyy-MM-dd}' and depstn='HHA'",strDate);
    也不用转什么格式,直接插就行了,数据库默认为yyyy-MM-dd 00:00:00
      

  12.   

    public DataSet GetDataDA(string strDate)
    {
    string strSql = "select std,fltid,ac from legs where std =to_date('"+strDate+"','yyyy-mm-dd hh24:mm:ss') and depstn='HHA'";//查询语句
    return clsCommon.GetData(strConn,strSql);//返回信息
    }这样写就可以:(oracle)std =to_date('"+strDate+"','yyyy-mm-dd hh24:mm:ss')
      

  13.   

    不好意思,上面的那个(oracle)是个文字说明,不含在代码里。时说在oracle里的形式。应该在sql server 也支持
      

  14.   

    "where CONVERT(nvarchar(10),std,121) = "+strDate;
       就可以把如果 2004-09-16转换为 2004-09-16 :00:00:00 我常常处理时间转换方面的程序。这个写法绝对没问题。。
      

  15.   

    "where convert(nvarchar(10),dateField,121)= convert(nvarchar(10),'"+dateFiel + "',121)";
    "where convert(nvarchar(10),dateField,121)= convert(nvarchar(10),'"+dateFiel + "',121)";