更新命令不起作用 [英] Upadate command not working

查看:126
本文介绍了更新命令不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

你好,


我正在开发一种库存软件.它是一个软件,硬件和用户详细信息条目.插入和删除操作正常运行.有时,许多同名条目.所以我做更新和删除过程是基于序列号.在此之前,搜索数据并将其显示在gridview中.

更新:
从那个gridview的数据将得出.如果只有一个条目,则表示单击更新,所有数据都将传递到插入表单中.从那里开始执行更新.
但是,只有一个条目才意味着该怎么做?
更新语句正在工作.显示数据已更新.但是数据不会在数据库中更新.或显示语法错误.
请参阅此代码.这是我尝试过的代码,

 受保护的 无效 Button4_Click(对象发​​件人,EventArgs e)
    {

         int  x;
        字符串 s;
        s = TextBox24.Text;
        x =(Convert.ToInt32(s));
       //  cmd =新的OleDbCommand(更新硬件集hardwarename ='" + TextBox2.Text +',Purchasedate ='" + TextBox4.Text +',description ='" + TextBox6.Text +',rate ='" + TextBox7.Text +',deliverydate ='" + TextBox8.Text +',vendarname ='" + TextBox39.Text +' ,AMC ='"+ TextBox11.Text +"',名字='"+ TextBox12.Text +"',姓氏='"+ TextBox31.Text +"',assettag ='"+ TextBox25.Text +"',处理器='"+ TextBox27.Text +',RAM ='" + TextBox28.Text +',硬盘='" + TextBox29.Text +',DVD ='" + TextBox30.Text +',服务标签='" + TextBox32.Text +'其中sno ='"+ x +"',con); 
      //  cmd.ExecuteNonQuery(); 
       

 cmd =  OleDbCommand(" ,等等);
        cmd.Parameters.AddWithValue(" ,TextBox2.Text);
        cmd.Parameters.AddWithValue(" ,TextBox4.Text);
        cmd.Parameters.AddWithValue(" ,TextBox6.Text);
        cmd.Parameters.AddWithValue(" ,TextBox7.Text);
        cmd.Parameters.AddWithValue(" ,TextBox8.Text);
        cmd.Parameters.AddWithValue(" ,TextBox39.Text);
        cmd.Parameters.AddWithValue(" ,TextBox11.Text);
        cmd.Parameters.AddWithValue(" ,TextBox12.Text);
        cmd.Parameters.AddWithValue(" ,TextBox31.Text);
        cmd.Parameters.AddWithValue(" ,TextBox25.Text);
        cmd.Parameters.AddWithValue(" ,TextBox27.Text);
        cmd.Parameters.AddWithValue(" ,TextBox28.Text);
        cmd.Parameters.AddWithValue(" ,TextBox29.Text);
        cmd.Parameters.AddWithValue(" ,TextBox30.Text);
        cmd.Parameters.AddWithValue(" ,TextBox32.Text);
        cmd.Parameters.AddWithValue(" ,x);
        cmd.ExecuteNonQuery();
        Response.Write(" );
    } 



搜索:

一键式搜索选项基于名称,部门,软件名称.
您能说出此选项的编码吗?

我正在等待您的友好答复.因为我需要尽快完成.

谢谢您,

解决方案

cmd.Parameters.AddWithValue("@ SN",x); //删除这个
并将SN设为Primarykey

它在下面不起作用

 "  


您是否尝试在查询编辑器上执行更新查询?


Hello,


I am developing one inventory software. It an software, hardware and user details entry. Insert and delete operations working properly. Some times There are many entries in same name. So i doing update and delete process are based upon serial number. Before that search the data and display it in gridview.

Update:
From that gridview data will reterive. If there is one entry means click update all the data are passed into insert form. From there the update is performing.
But more there one entry means how can do it?
Update statement is working. It showing data is updated. But data is not updated in database. or it showing syntax error.
See this code please. This is the code i tried,

protected void Button4_Click(object sender, EventArgs e)
    {

        int x;
        String s;
        s = TextBox24.Text;
        x = (Convert.ToInt32(s));
       // cmd = new OleDbCommand("update hardware set hardwarename='"+TextBox2.Text+"', purchasedate='"+TextBox4.Text+"', description='"+TextBox6.Text+"', rate='"+TextBox7.Text+"', deliverydate='"+TextBox8.Text+"', vendarname='"+TextBox39.Text+"', AMC='"+TextBox11.Text+"', firstname='"+TextBox12.Text+"', lastname='"+TextBox31.Text+"', assettag='"+TextBox25.Text+"', processor='"+TextBox27.Text+"', RAM='"+TextBox28.Text+"', harddisk='"+TextBox29.Text+"', DVD='"+TextBox30.Text+"', service tag='"+TextBox32.Text+"' where sno='"+ x +"'", con);
      //  cmd.ExecuteNonQuery();
       

 cmd = new OleDbCommand("UPDATE hardware SET hardwarename=@HW, purchasedate=@PD, description=@DE, rate=@RA, deliverydate=@DD, vendarname=@VN, AMC=@AM, firstname=@FN, lastname=@L, assettag=@AT, processor=@PR, RAM=@RA, harddisk=@HD, DVD=@DVD, serivce tag=@ST WHERE sno=@SN", con);
        cmd.Parameters.AddWithValue("@HW", TextBox2.Text);
        cmd.Parameters.AddWithValue("@PD", TextBox4.Text);
        cmd.Parameters.AddWithValue("@DE", TextBox6.Text);
        cmd.Parameters.AddWithValue("@RA", TextBox7.Text);
        cmd.Parameters.AddWithValue("@DD", TextBox8.Text);
        cmd.Parameters.AddWithValue("@VN", TextBox39.Text);
        cmd.Parameters.AddWithValue("@AM", TextBox11.Text);
        cmd.Parameters.AddWithValue("@FN", TextBox12.Text);
        cmd.Parameters.AddWithValue("@LN", TextBox31.Text);
        cmd.Parameters.AddWithValue("@AT", TextBox25.Text);
        cmd.Parameters.AddWithValue("@PR", TextBox27.Text);
        cmd.Parameters.AddWithValue("@RA", TextBox28.Text);
        cmd.Parameters.AddWithValue("@HD", TextBox29.Text);
        cmd.Parameters.AddWithValue("@DVD", TextBox30.Text);
        cmd.Parameters.AddWithValue("@ST", TextBox32.Text);
        cmd.Parameters.AddWithValue("@SN", x);
        cmd.ExecuteNonQuery();
        Response.Write("<Script>alert('Data has been updated Successfully')</Script>");
    }



Search:

The search option is based on name, department, softwarename in one button option.
Can you say the coding for this option.

I am waiting for your kind reply. Because I need to complete soon.

Thank you,

解决方案

cmd.Parameters.AddWithValue("@SN", x); //Remove this one
and Make SN as Primarykey

it its notworking try below

" SqlConnection con = new SqlConnection(""Data Source=(local);Initial Catalog=LoginDemo;Integrated Security=True"");
        SqlDataAdapter adp = new SqlDataAdapter();
        adp.UpdateCommand = new SqlCommand(""UPDATE CreateUser VALUES(@USERNAME,@PASSWORD) WHERE ID=@ID"",con);
        adp.UpdateCommand.Parameters.Add(""@USERNAME"", SqlDbType.VarChar).Value = TextBox1.Text;
        adp.UpdateCommand.Parameters.Add(""@PASSWORD"", SqlDbType.VarChar).Value = TextBox2.Text;
        con.Open();
        adp.UpdateCommand.ExecuteNonQuery();"


Did you try to execute the update query on query editor?


这篇关于更新命令不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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