我要把控件里面的函数追加到access数据库中,程序如下。在vs里面编译通过,不知什么问题在iis运行之后报错说““/access”应用程序中的服务器错误。”,“异常详细信息: System.Data.OleDb.OleDbException: 操作必须使用一个可更新的查询。”
  sql语句放进access里面执行成功;每个字段都是文字类型的;在access中对那个库的安全设置里我已经给设置可以改,可以写了。还是有问题,请问如何解决?急啊。private void Button_sub_Click(object sender, System.EventArgs e)
{
string strConnection="Provider=Microsoft.Jet.OleDb.4.0;Data Source=";
strConnection+=Server.MapPath("aspnet.mdb"); //*就是数据库的名字
OleDbConnection objConnection=new OleDbConnection(strConnection);
objConnection.Open();
Label_state.Text="连接打开!"; OleDbCommand objCommand1=new OleDbCommand("Insert into logic([username],[age],[password1]) Values('"+TextBox_name.Text+"','"+TextBox_age.Text+"','"+TextBox_password1.Text+"')",objConnection);
objCommand1.ExecuteNonQuery();/////////////运行到此处出错。
Label_state.Text="添加成功了!";
objConnection.Close(); Response.Redirect("display.aspx");
}

解决方案 »

  1.   

    这个是你的数据没有写入权限呀,你找到你的ACCESS数据库,然后右键   属性   添加everyone对数据库的访问权限,将读、写等都给它.或是完全控制也行
      

  2.   

    最好,sql也用个字符串变量比较好,不容易出错
      

  3.   

    我用的是xp,右键单击access-》属性里面只有只读和隐藏两项啊?没有你说的权限问题啊?
      

  4.   

    右键   属性   安全   看一下有没有everyone这个用户,要是没有就加上,旁边不是有一个添加吗?(要是再找不到,那就点高级里,将everyone找到,并加进去)
    注意给everyone的读与写的权限,当然你可以给完全控制的权限,只是不安全
      

  5.   

    楼上,你说是我找到我写入的那个aspnet.mdb文件吧?你的系统是2000吧,我的是xp。右键属性里面没有“安全”那一项!也没有添加everyone用户的地方。
    高级里面也就两项,一个是建立索引,一个是压缩什么的。没有权限设置的地方。权限再那里写啊?
      

  6.   

    你的代码"Insert into logic([username]......"
    logic后面加空格
      

  7.   

    我也是XP professional版的,没有“安全”标签页。
      

  8.   

    谢谢远方大哥的热心,耐心帮助。真的很感谢!
    谢谢debug1984的指点!