这是因为表中的这个字段(即单元格)跟其他表有外键约束。
如:
班级表(主表)
班级id 班级名称
1 一年一班
2 一年二班
学生表(副表)
学生id 学生姓名 所属班级id
1 张三 1
2 李四 1
3 王五 2
4 赵六 2
如果要更改副表中的班级id为1的改为3,那么就无法更改,因为学生表中的所属班级id必须为主表中存在的才可以。
如果是ACCESS数据库,需要给服务器上的相应文件夹(不仅仅是mdb数据库文件)添加修改的权限,因为在修改时,还要在mdb文件所在的文件夹里生成一个临时文件。
<br>在本地你是以管理员身份登录,拥有最大的权限,因此不存在这样的问题。
rsoopen"select from order_info where o_id="&o_id,conn,1,3
改成rsoopen"select from order_info where o_id="&o_id,conn,1,3 试试。你的数据集中没有字段,当然无法更新了
一般有三种方法保护ACCESS窗体
1)使用启动窗体或自定义宏菜单(在ACCESS选项——启动中设置),菜单——视图——工具栏——取消对"数据库"的勾选,——自定义, 取消勾选工具栏的勾选(自定义宏菜单除外,如果有的话),目的就是让用户看不到所有能更改数据库对象设计方案的菜单、工具栏、命令图标。但是这种方案很容易被破解,特别是对ACCESS数据库有一定研究的用户来说,尽管可以使用代码禁止shift键,但是破解方案是可以在网上查到的;
2)设置工作组安全机制
菜单——工具——安全——设置工作组安全机制向导,跟随向导指引设置,再设置不同用户的权限保护相关的数据库对象。这个方案保护性能比较高,类似大型数据库系统的用户级保护机制,但是设置复杂而且分发使用也比较麻烦,另外2007以后版本不支持该手段;
3)生成编译后的数据库文件(mde 2003版本、accde 2007及以后版本)生成方法略
这种方法保护最彻底,几乎不存在破解的可能,但是一旦编译后就不再可以被修改,源数据库要小心保护好。
第一点,你的第一个and不应该有。所以语句应该为update biao set zttag='1' ,de='2 ' where id='3' and ce='4';
如果还是错误,你就要注意一下,你的字段格式,比如id一般应该是数字的,那么他就不需要加引号。
以上就是关于数据库的表 有的是只读模式 不能修改 怎么办全部的内容,包括:数据库的表 有的是只读模式 不能修改 怎么办、我为什么不能修改数据库急救!!!!!!!、如何锁定ACCESS数据库的窗体,不让其它人修改等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)