SqlDataAdapter myCommand=new SqlDataAdapter("select * from count where(Datetime='"+nowdatetime+"')",myConnection);
请问高手,如何判断是否找到符合条件的记录没有?只需判断找到与否,不需要知道找到多少以及具体内容,请高手们帮忙!!小弟感激涕零!!

解决方案 »

  1.   

    string strSql = "select count(*) from count where Datetime='" + nowdatetime + "'"
    SqlCommand myCommand = new SqlCommand(strSql, myConnection);
    int intRet = (int)myCommand.ExecuteScalar();if( intRet > 0 )
       // 就表示有记录。
      

  2.   

    count(*)是Oracle里的用法,Sqlserver是cnt(*)...?
      

  3.   

    SqlDataAdapter myCommand=new SqlDataAdapter("select * from count where(Datetime='"+nowdatetime+"')",myConnection);
    DataSet dset=new DataSet();
    myCommand.Fill(dset,"table1");
    if(dset.Tables[0].Rows.Count!=0)
    {
        要执行的代码
    }
      

  4.   

    if exists(select 1 from count where(Datetime='"+nowdatetime+"') 
        select 1 
    else
        0
      

  5.   

    To:   fangxinggood(JustACoder) 
    你这根本就是不负责任的做法,ExecuteScalar()该方法用于执行任何一条命令,返回结果集中第一行第一列的值,如果没有这样的Datetime则异常,或者第一行第一列的值,转型为int时失败呢?也会异常。楼主只要求判断的话,可以考虑:
    SqlDataAdapter myCommand=new SqlDataAdapter("select * from count where(Datetime='"+nowdatetime+"')",myConnection);
    SqlDataReader dr = myCommand.ExecuteReader();
    if( dr.Read() )
    {
        Console.WriteLine("OK!");//表明存在
        dr.Close();
    }
      

  6.   

    唉,楼上这些人你们就很负责了么?你们看清我用的方法吗?
    count(*) !
    如果没有记录就是0!
    使用DataSet或者DataTable根本没必要!
      

  7.   

    还有楼上的:
    SqlDataAdapter myCommand=new SqlDataAdapter("select * from count where(Datetime='"+nowdatetime+"')",myConnection);
    SqlDataReader dr = myCommand.ExecuteReader();myCommand被你声明成SqlDataAdapter,你以为你负责任么?
      

  8.   

    To fangxinggood(JustACoder):
    Sorry,我没注意看清楚!你说得是,我很少用Command对象,习惯了DataAdapter。上面的确写错了:(