找不到表0

时间:2017-04-24 12:46:15

标签: c# sql visual-studio ms-access

该代码在其他表上运行良好。 如果他在桌子上找到他得到的东西并且假他没有找到它,则代码返回true。 错误翻译:无法找到表0

        public bool Found(long num)
    {
        DataSet ds = new DataSet();
        string str = string.Format("select * from Customers where Customer_Id={0} ", num);
        ds = ReturnDS(str);
        if (ds.Tables[0].Rows.Count == 0)
            return false;
        else
            return true;
    }

        public DataSet ReturnDS(string SqlStr)
    {
        DataSet ds = new DataSet();
        OleDbCommand cmd = new OleDbCommand();
        try
        {
            //  sql מאפיין אשר מאפשר לקבוע או לקבל את הוראת :CommandText
            cmd.CommandText = SqlStr;
            //  OleDbConnection מאפיין אשר מאפשר לקבוע או לקבל את אובייקט ההתחברות מהמחלקה :Connection
            cmd.Connection = cnn;
            //DataSet ומשימה שנייה בכדי לעדכן את בסיס הנתונים בהתאם למידע שהתרחש ב  DataSet יצירת מופע למחלקה המייצגת אובייקט ההתחברות לבסיס הנתונים. ייצוג זה דרוש לשתי משימות משימה ראשונה בכדי להעביר נתונים מבסיס הנתונים ל 
            OleDbDataAdapter da = new OleDbDataAdapter(cmd);

            // DataSet טוענת את הנתונים לתוך אובייקט  Fill המתודה 
            da.Fill(ds);
        }
        catch (Exception e)
        { MessageBox.Show(e.Message); }
        finally
        {
            cnn.Close();
        }
        return ds;
    }

The Error&Code

2 个答案:

答案 0 :(得分:0)

错误表示您的DataSet不包含索引为0的表。 检查ReturnDS正在做什么,如果有一些信息,为什么它找不到表。也许你的SQL语句中只有一个错误。

表格是否存在?该表是否包含名称为Customer_Id的列?你有阅读权吗?等

答案 1 :(得分:0)

检查表格数量。

public bool Found(long num)
{
    DataSet ds = new DataSet();
    string str = string.Format("select * from Customers where Customer_Id={0} ", num);
    ds = ReturnDS(str);
    return ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0;
}