读书人

VS08 c#更新access数据库 update更新不

发布时间: 2012-12-14 10:33:08 作者: rapoo

VS08 c#更新access数据库 update更新不了数据~是权限问题吗

刚开始学~之前的insert into是因为字段name password是系统默认有的,会有错误,加上了[]就好了,但是update没有提示错误 可是一直没有更新数据。求指点啊-
private void button1_Click(object sender, EventArgs e)
{

OleDbConnection aConnection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Application.StartupPath + "/" + "DB_student.mdb");
aConnection.Open();
string strqx,str1;
str1 = listBox1.SelectedValue.ToString();
MessageBox.Show(str1);
if (checkBox3.Checked == false)
strqx = "update Tuser set qx=0 where [name]='str1'";

else
strqx = "update Tuser set qx=1 where [name]='str1'";

MessageBox.Show(strqx);
OleDbDataAdapter myadapter = new OleDbDataAdapter(strqx, aConnection); //执行查询
DataSet ds = new DataSet(); //新建数据集
myadapter.Fill(ds);//将SQL执行结果,填入数据集ds中
MessageBox.Show("修改用户权限成功");

}

[最优解释]
strqx = "update Tuser set qx=0 where [name]='"+str1+"'";


[其他解释]
bia神,居然是你
[其他解释]
strqx = "update Tuser set qx=0 where [name]='str1'";


'str1' ?
字符串有问题吧。。。
[其他解释]

引用:
strqx = "update Tuser set qx=0 where [name]='str1'";


'str1' ?
字符串有问题吧。。。

我是想通过str1代表选中listBox里的字段内容,然后用修改数据的sql语言实现啊 语法没有提示错误啊~我也在想是不是str1的问题,不过我用MessageBox.show显示str1确实已经变成了我选中listBox里的字段内容了啊~
[其他解释]
引用:
strqx = "update Tuser set qx=0 where [name]='str1'";


'str1' ?
字符串有问题吧。。。

应该是这个有问题~试过直接name ='user'(其中的一个用户)是可以修改成功的,但是要怎么才能把我选中的listBox里的用户修改权限呢?我这种定义字符串的方法不对吗~
------其他解决方案--------------------


引用:
strqx = "update Tuser set qx=0 where [name]='"+str1+"'";

多谢啦~终于不用纠结了MessageBox.show 显示的是"update Tuser set qx=1 where [name]='biabia'";
而不再是"update Tuser set qx=0 where [name]='str1'";
这就跟+TextBox.Text+一样。

读书人网 >C#

热点推荐