处理数据库中的数据 [英] work with data in data base

查看:39
本文介绍了处理数据库中的数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用sql compact 3.5在C#中使用数据库,但是在每种形式中,与表相关的查询之一是执行我单击按钮并查看正确的结果,但是如果我更改条件并单击按钮,则查询在旧条件下执行,我看到旧结果表明sqlcashed旧数据
任何人都可以帮助我吗?
这是我的代码:

i want to work with data base in C# with sql compact 3.5 but in each form one of query that related with on table is execute i click on button and see the correct result butif i change the condition and click on button the query execute with the the old condition and i see the old result it peer that the sqlcashed the old data
any one can help me???
this my code:

 private DataTable select(string con)
        {

            DataTable k = new System.Data.DataTable();
            try
            {

                string str = "Data Source=C:\\Documents and Settings\\almas\\Desktop\\BazarKhodro\\khodro.sdf";
                Qconnection.ConnectionString = str;
                Qcommand.Connection = Qconnection;
                Qcommand.Parameters.AddWithValue("@type", comboBox1 .Text );
                Qcommand.Parameters.AddWithValue("@name", textBox3.Text);
                Qcommand.Parameters.AddWithValue("@lname", textBox4.Text);
                string commandText = " select kharid.date, moshtari.name, moshtari.lname, kharid.type, kharid.modelfrom, kharid.modelto, kharid.tip, kharid.karkardfrom, kharid.karkardto, kharid.color, kharid.pricefrom, kharid.priceto , kharid.parvande FROM kharid INNER JOIN moshtari ON kharid.mid = moshtari.id where "+con;

                Qcommand.CommandText = commandText;
                Qcommand.CommandType = CommandType.Text;
                SqlCeDataAdapter a = new SqlCeDataAdapter();
                a.SelectCommand = Qcommand;
             a.Fill(k);
                Qconnection.Open();
                Qconnection.Close();
                return k;

            }
            catch (Exception ex)
            {

                throw new Exception(ex.Message);
                return k;
            }
        }

private void button1_Click(object sender, EventArgs e)
        {
            if (textBox3.Text == "" || textBox4.Text == "")
                MessageBox.Show("لطفا نام و نام خانوادگي را وارد نماييد");
            else
            {

                if (radioButton9.Checked == true)
                {
                    string u = "moshtari.name like '%'+@name+'%' and moshtari.lname like '%'+@lname+'%' ";
                   dataGridView1.DataSource= select(u);
                }
                else if (radioButton8.Checked == true)
                {
                    string u = "moshtari.name like '%'+@name+'%' and moshtari.lnamename like '%'+@lname+'%' and kharid.parvande=" + "'فعال'";
                    dataGridView1.DataSource = select(u);
                }
                else
                {
                    string u = "moshtari.name like '%'+@name+'%' and moshtari.lnamename like '%'+@lname+'%' and kharid.parvande!=" + "'فعال'";
                    dataGridView1.DataSource = select(u);
                }
            }
        }

推荐答案



如下更新代码.

Hi,

Update your code as below.

private DataTable select(string con)
{ 
   DataTable k = new System.Data.DataTable();
   try
   { 
      string str = "Data Source=C:\\Documents and Settings\\almas\\Desktop\\BazarKhodro\\khodro.sdf";
      Qconnection.ConnectionString = str;
      Qcommand.Connection = Qconnection;
      Qcommand.Parameters.AddWithValue("@type", comboBox1 .Text );
      Qcommand.Parameters.AddWithValue("@name", textBox3.Text);
      Qcommand.Parameters.AddWithValue("@lname", textBox4.Text);
      string commandText = " select kharid.date, moshtari.name, moshtari.lname, kharid.type, kharid.modelfrom, kharid.modelto, kharid.tip, kharid.karkardfrom, kharid.karkardto, kharid.color, kharid.pricefrom, kharid.priceto , kharid.parvande FROM kharid INNER JOIN moshtari ON kharid.mid = moshtari.id where "+con;
      Qconnection.Open();
      Qcommand.CommandText = commandText;
      Qcommand.CommandType = CommandType.Text;
      SqlCeDataAdapter a = new SqlCeDataAdapter(Qcommand);      
      a.Fill(k);                
      Qconnection.Close();
   }
   catch (Exception ex)
   { 
      throw new Exception(ex.Message);                
   }
   return k;
}
 
private void button1_Click(object sender, EventArgs e)
{
    string u="";
    if (textBox3.Text == "" || textBox4.Text == "")
        MessageBox.Show("لطفا نام و نام خانوادگي را وارد نماييد");
    else
    { 
        if (radioButton9.Checked == true)
        {
            u = " moshtari.name like '%'+@name+'%' and moshtari.lname like '%'+@lname+'%' ";           
        }
        else if (radioButton8.Checked == true)
        {
           u = "moshtari.name like '%'+@name+'%' and moshtari.lnamename like '%'+@lname+'%' and kharid.parvande=" + "'فعال'";
        }
        else
        {
           u = "moshtari.name like '%'+@name+'%' and moshtari.lnamename like '%'+@lname+'%' and kharid.parvande!=" + "'فعال'";          
        }
   }
   dataGridView1.DataSource= select(u);
   dataGridView1.DataBind();
}



希望这能解决您的问题.
我认为您正面临问题,因为您没有绑定gridview.



Hope this will resolve your problem.
I think you are facing the problem because you are not binding the gridview.


这篇关于处理数据库中的数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆