用T-SQL 中的datediff函数与今天getdate()作天数上的比较,为0则是今天的生日

解决方案 »

  1.   

    select datediff(day, getdate(), getdate())
    假设data表中的列birthday是datetime型则:select * from data where datediff(day, birthday, getdate())=0
    找出今天生日的人
      

  2.   


    conn=new OleDbConnection(connstr);
    string sqlstr="select * from data where datediff(day,出生日期,getdate())=0";
    DataSet ds=new DataSet ();
    conn.Open();
    dt=new OleDbDataAdapter(sqlstr,connstr); 
    dt.Fill (ds,"data");
    dg1.SetDataBinding(ds,"data");
    conn.Close ();
    这样好像行了但因为没有今日生日的人所以dt=new OleDbDataAdapter(sqlstr,connstr);这句出错了,在这个程序中当空记录时我怎样跳出呢?
      

  3.   

    conn=new OleDbConnection(connstr);
    string sqlstr="select * from data where datediff(day,出生日期,getdate())=0";
    DataSet ds=new DataSet ();
    conn.Open();
                             try{
    dt=new OleDbDataAdapter(sqlstr,connstr); 
    dt.Fill (ds,"data");
                              }
                            catch 
                               {
                                 //空数据处理
                                }
    dg1.SetDataBinding(ds,"data");
    conn.Close ();