当前位置:编程学习 > C#/ASP.NET >>

update更新不了,请大家帮忙看下

string connStr, updateCmd;
            connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=house.mdb";
            OleDbConnection conn;
            OleDbCommand cmd;
            conn = new OleDbConnection(connStr);
            conn.Open();
            updateCmd = "UPDATE house Set 房型=@fx,楼层=@lc,装修=@zx,家电家具=@jj,联系人=@lxr,电话=@dh,备注=@bz Where 房源编号=@fybh";

            
            cmd = new OleDbCommand(updateCmd, conn);
            cmd.Parameters.Add(new OleDbParameter("@fybh", OleDbType.Char));
            cmd.Parameters.Add(new OleDbParameter("@fx", OleDbType.Char));
            cmd.Parameters.Add(new OleDbParameter("@lc", OleDbType.Integer));
            cmd.Parameters.Add(new OleDbParameter("@zx", OleDbType.Char));
            cmd.Parameters.Add(new OleDbParameter("@jj", OleDbType.Char));
            cmd.Parameters.Add(new OleDbParameter("@lxr", OleDbType.Char));
            cmd.Parameters.Add(new OleDbParameter("@dh", OleDbType.Char));
            cmd.Parameters.Add(new OleDbParameter("@bz", OleDbType.Char));

            cmd.Parameters["@fybh"].Value = textfybh.Text;
            cmd.Parameters["@fx"].Value = textfx.Text;
            cmd.Parameters["@lc"].Value = UpDownlc.Value;
            cmd.Parameters["@zx"].Value = textzx.Text;
            cmd.Parameters["@jj"].Value = textjj.Text;
            cmd.Parameters["@lxr"].Value = textlxr.Text;
            cmd.Parameters["@dh"].Value = textdh.Text;
            cmd.Parameters["@bz"].Value = textbz.Text;

            cmd.ExecuteNonQuery();
            conn.Close();
            showfy() --------------------编程问答-------------------- access  字段最好用[]括起来!

还有  你的语句报什么错? --------------------编程问答-------------------- updateCmd = String.Format(@"UPDATE house Set 房型='{0}',楼层='{1}'...", textfx.Text, ...); --------------------编程问答-------------------- connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|house.mdb"

文件放在App_Data文件夹下面; --------------------编程问答--------------------
出错信息是啥啊,对症下药! --------------------编程问答-------------------- cmd.Parameters.AddWithValue("@fybh",textfybh.Text);

一行就行了。

另外。mdb文件不能设置只读属性,安全性里面允许匿名帐号可修改 --------------------编程问答--------------------
引用 4 楼 meceky 的回复:
出错信息是啥啊,对症下药!

luck --------------------编程问答-------------------- 具体点吗,只说不能更新,提示了什么错误哩 --------------------编程问答-------------------- 肯定是你字段的格式你没考虑清楚。文本格式的需要加单引号
--------------------编程问答-------------------- 你把异常写出来啊,
是不是根本连不通啊? --------------------编程问答-------------------- 恩  把错误信息贴出来吧 --------------------编程问答-------------------- 没有出错信息!运行了这段代码后,textbox.text的数值更新不到数据库里!调试也没报错,就是没反映 --------------------编程问答-------------------- 调试时监视一下你的sql语句,看看有没有问题,是不是根本就没有符合where语句的记录,所以才没更新成功
或者把监视到的sql语句放到query analyzer里执行下 看看好用么 --------------------编程问答-------------------- 赞同12楼说的 --------------------编程问答-------------------- connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|house.mdb"

文件放在App_Data文件夹下面; --------------------编程问答-------------------- 混分的吧~ --------------------编程问答-------------------- 报什么异常
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,