satyajeett Ответов: 3

Ошибка базы данных - не удается найти таблицу 0


Привет.

Я использую следующие простые инструкции в своем файле cs и получаю ошибку
"не удается найти таблицу 0"...

Не в состоянии понять, почему?..
У меня есть одна таблица в моей базе данных
логин (имя, pwd)...
protected void Button1_Click(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
            a = 0;
        con = new SqlConnection();
        myHostName = Dns.GetHostName().ToString();
       
        con.ConnectionString = ConfigurationManager.AppSettings["SqlConnectionString"];
        sql = "select * from login";
        adp = new SqlDataAdapter(sql, con);
        ds = new DataSet();
        try
        {
            adp.Fill(ds);
        }
        catch (Exception ex) { }
        int i;
      
       // Label3.Text = "asdfasd" + ds.Tables.Count.ToString();
        bool flag=false;
        if (a <= 2)
        {
            if (ds.Tables[0].Rows.Count > 0)//this line is shwoing error
            {
                for (i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    if ((txtLName.Text == ds.Tables[0].Rows[i]["name"].ToString()) && (txtPwd.Text == ds.Tables[0].Rows[i]["pwd"].ToString()))
                    {
                        flag = true;
                        goto b;
                    }
                    else
                    {
                        flag = false;
                    }

                }
            }
        }
        else
        {
            Label3.Text = "Matched 3 times";
            Button1.Enabled = false;
        }

3 Ответов

Рейтинг:
23

Dnyaneshwar Kondbale

if (ds.Tables[0].Rows.Count > 0)

Эта строка показывает ошибку перед этой строкой вы должны проверить количество таблиц, присутствующих в вашем наборе данных i. a.
if(ds.Tables.count > 0)
{

if (ds.Tables[0].Rows.Count > 0)
.
.
.

}

Надеюсь, он работает нормально.. :)


Рейтинг:
2

PANKAJMAURYA

Строка, показывающая ошибку, должна быть такой

если (ДС.Таблицы.Граф > 0 & & amp; ds.Таблицы[0].Строк.Граф > 0)
{
.
.
.



}


satyajeett

спасибо вам обоим.но если индекс начинается с 0 ?.. или если я использую ds.Tables. count > 0 условие тогда как я могу использовать tables[0]. row. count.. это всегда будет ложь...!!

Dnyaneshwar Kondbale

Самом деле ДС.Tables. count-это проверка отсутствия таблицы, присутствующей в наборе данных, если в моем наборе данных присутствует 0 таблиц (означает, что набор данных равен нулю), то как мы можем выполнить операцию типа Rows.count на таблице, которая находится в позиции 0,
В строке ds. Tables. count > 0 мы проверяем, сколько таблиц, если она больше нуля, это не значит, что нам нужно проверять Ds.Tables[1], она всегда начинается с Ds.Tables[0].
:)

satyajeett

Эй спасибо за объяснение но пожалуйста посмотрите еще раз на мой code..as я сказал, что у меня есть 1 таблица в моей базе данных... состояние (ДС.таблицы.граф и gt;0) всегда возвращая false.

Dnyaneshwar Kondbale

Хии Сатья,
Здесь, в наборе данных, есть только одна таблица, Как вы говорите.
Тогда ДС.Стол.счетчик должен вернуть таблицу подсчета т. е. 1 свойства count возвращает число в таблице т. е. 1 и его не вернуть индекс из таблицы, т. е. 0.

Существует разница между индексом и количеством.
0-это индекс, а 1-количество в приведенном выше состоянии.

:)

Рейтинг:
0

maulik_b_dave

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;
public partial class Admin_JobClassMaster : System.Web.UI.Page
{
    GenFun objgen = new GenFun();
    DB objcon = new DB();
    static DataSet ds = new DataSet();

    static string name;
  
        protected void Page_Load(object sender, EventArgs e)
    {

        try
        {
            if (!IsPostBack)
            {
               
            }
            if (Request.Cookies["Name"] != null)
            {

                name = Request.Cookies["Name"].Value.ToString();
               // Response.Cookies["Name"].Expires = DateTime.Now.AddDays(-1);

                if ((((name)) != "0") && (((name)) != ("EMPINFO")))
                {
                    btnDelete.Visible = true;
                    btnUpdate.Visible = true;
                    btnAdd.Visible = false;
                   
                    if (!IsPostBack)
                    {

                        FetchDataByID();
                        lblStatus.Text = "";
                    }




                }
                else
                {
                    if ((((name)).Equals("EMPINFO")))
                        lblStatus.Text = "<div class=\"alert alert-success alert-dismissable\"><b>Success:</b> New Employee Inserted Successfully. </div>"; 
                    btnDelete.Visible = false;
                    btnUpdate.Visible = false;
                    btnAdd.Visible = true;
                   
                }
            }
            else
            {
                btnDelete.Visible = false;
                btnUpdate.Visible = false;
                btnAdd.Visible = true;
                
                lblStatus.Text = "";

            }
           
        }
        catch (SqlException ex1)
        {
            lblStatus.Text = "<div class=\"alert alert-danger alert-dismissable\">Error: " + ex1.Message + " </div> "; if (Request.Cookies["Name"] != null){ Response.Cookies["Name"].Expires = DateTime.Now.AddDays(-1);}
        }
        catch (Exception ex1)
        {

            lblStatus.Text = "<div class=\"alert alert-danger alert-dismissable\">Error: " + ex1.Message + " </div> "; if (Request.Cookies["Name"] != null){ Response.Cookies["Name"].Expires = DateTime.Now.AddDays(-1);}

        }
    }
    void FetchDataByID()
    {



        List<object> lsobj = new List<object>();
        lsobj.Add(((name)));
        lsobj.Add(Session["companyid"].ToString());
        ds = objcon.FetchData(lsobj, "HR_JobClassMaster_SP", "SELECTBYID");
        if (ds.Tables[0].Rows.Count > 0)
        {
            

                TxtJobClassTitle.Text = ds.Tables[0].Rows[0].ItemArray[1].ToString();
                TxtStartRange.Text = ds.Tables[0].Rows[0].ItemArray[2].ToString();
                TxtMidRange.Text = ds.Tables[0].Rows[0].ItemArray[3].ToString();
                TxtHighRange.Text = ds.Tables[0].Rows[0].ItemArray[4].ToString();
                DrpBouns.SelectedIndex = DrpBouns.Items.IndexOf(DrpBouns.Items.FindByValue(ds.Tables[0].Rows[0].ItemArray[5].ToString()));
                DrpCommission.SelectedIndex = DrpCommission.Items.IndexOf(DrpCommission.Items.FindByValue(ds.Tables[0].Rows[0].ItemArray[6].ToString()));
                DrpBenifits.SelectedIndex = DrpBenifits.Items.IndexOf(DrpBenifits.Items.FindByValue(ds.Tables[0].Rows[0].ItemArray[7].ToString()));
                TxtWorkHours.Text = ds.Tables[0].Rows[0].ItemArray[8].ToString();
          
        }

    }
    void CRUDINSUPDLT(string Action)
    {

        List<object> lsobj = new List<object>();
        if ((name) != null && name != "")
        {
            if (((name)) != "0")
            {
                lsobj.Add(((name)));

            }
        }



        lsobj.Add(TxtJobClassTitle.Text);
        lsobj.Add("0");
        lsobj.Add("0");
        lsobj.Add("0");
        lsobj.Add(DrpBouns.SelectedItem.ToString());
        lsobj.Add(DrpCommission.SelectedItem.ToString());
        lsobj.Add(DrpBenifits.SelectedItem.ToString());
        lsobj.Add(TxtWorkHours.Text);
        lsobj.Add(Session["branchid"].ToString());
        lsobj.Add("N");
        lsobj.Add(Session["username"].ToString());
        lsobj.Add(System.DateTime.Now.ToString());
        lsobj.Add(Session["companyid"].ToString());



        objcon.insupdlt(lsobj, "HR_JobClassMaster_SP", Action);


        objgen.createlog(Session["branchid"].ToString(), Session["username"].ToString(), HttpContext.Current.Request.Url.AbsolutePath, "HR_JobClassMaster_SP", ds, lsobj, Action);




    }
    protected void btnAdd_Click(object sender, EventArgs e)
    {
        try
        {



            CRUDINSUPDLT("INSERT");
            HttpCookie cName = new HttpCookie("Name");
            cName.Value = ("INSERT1");
            Response.Cookies.Add(cName);
            Response.Redirect("DisplayJobClass.aspx", false);



            lblStatus.Text = "";
        }
        catch (SqlException ex1)
        {
            lblStatus.Text = "<div class=\"alert alert-danger alert-dismissable\">Error: " + ex1.Message + " </div> "; if (Request.Cookies["Name"] != null) { Response.Cookies["Name"].Expires = DateTime.Now.AddDays(-1); }
        }
        catch (Exception ex1)
        {

            lblStatus.Text = "<div class=\"alert alert-danger alert-dismissable\">Error: " + ex1.Message + " </div> "; if (Request.Cookies["Name"] != null) { Response.Cookies["Name"].Expires = DateTime.Now.AddDays(-1); }

        }
    }
    protected void btnUpdate_Click(object sender, EventArgs e)
    {
        try
        {



            CRUDINSUPDLT("UPDATE");
            HttpCookie cName = new HttpCookie("Name");
            cName.Value = ("UPDATE");
            Response.Cookies.Add(cName);
            Response.Redirect("DisplayJobClass.aspx", false);

            lblStatus.Text = "";
        }
        catch (SqlException ex1)
        {
            lblStatus.Text = "<div class=\"alert alert-danger alert-dismissable\">Error: " + ex1.Message + " </div> "; if (Request.Cookies["Name"] != null) { Response.Cookies["Name"].Expires = DateTime.Now.AddDays(-1); }
        }
        catch (Exception ex1)
        {

            lblStatus.Text = "<div class=\"alert alert-danger alert-dismissable\">Error: " + ex1.Message + " </div> "; if (Request.Cookies["Name"] != null) { Response.Cookies["Name"].Expires = DateTime.Now.AddDays(-1); }

        }

    }
    protected void btnDelete_Click(object sender, EventArgs e)
    {
        try
        {

            HttpCookie cName = new HttpCookie("Name");
            cName.Value = ("DELETE");
            Response.Cookies.Add(cName);

            CRUDINSUPDLT("DELETE");
            Response.Redirect("DisplayJobClass.aspx", false);

            lblStatus.Text = "";
        }
        catch (SqlException ex1)
        {
            lblStatus.Text = "<div class=\"alert alert-danger alert-dismissable\">Error: " + ex1.Message + " </div> "; if (Request.Cookies["Name"] != null) { Response.Cookies["Name"].Expires = DateTime.Now.AddDays(-1); }
        }
        catch (Exception ex1)
        {

            lblStatus.Text = "<div class=\"alert alert-danger alert-dismissable\">Error: " + ex1.Message + " </div> "; if (Request.Cookies["Name"] != null) { Response.Cookies["Name"].Expires = DateTime.Now.AddDays(-1); }

        }
    }
  
}