c#操作access,update语句不执行的解决办法
1首先试试下面的方法: 参数位置必须和赋顺序相同才行 ,否则更新时就会出现数据无法更新但是也不报错的怪现象。 例如:update tablename set [a]=@a1,[b]=@a2 where [id]=@a3 那么你在加参数时,也必须先加@a,再加@b,最后加@id.也就是说必须要 cmd.Paramete
1首先试试下面的方法:
参数位置必须和赋值顺序相同才行,否则更新时就会出现数据无法更新但是也不报错的怪现象。
例如:update tablename set [a]=@a1,[b]=@a2 where [id]=@a3
那么你在加参数时,也必须先加@a,再加@b,最后加@id.也就是说必须要
cmd.Parameters.AddWithValue(“@a1”,a);
cmd.Parameters.AddWithValue(“@a2”,b);
cmd.Parameters.AddWithValue(“@a3”,id);
2 上面不行的话再试试下面的方法
今天打开一个Access库,要修改其中的有些数据,就新建了一个更新查询,保存后双击执行,没有反应。仔细检查了一下,查询代码应该没问题,再执行,还是没反应。因本人装的是Office2007,用得还不熟练,一下子还真没了办法。在反复执行当中,发现状态栏有提示:“操作或事件已被禁用模式阻止”,看来与安全设置有关,在网上一搜,终于找到解决方法:
仅当数据库未驻留在受信任位置或者未签名时,才执行下列步骤。每次打开不受信任或未签名的数据库时,Access 都会显示文档操作栏。
在“消息栏”上,单击“选项”。
在“Microsoft Office 安全选项”对话框中,单击“启用此内容”,然后单击“确定”。
如果没有看到消息栏
在“数据库工具”选项卡上的“显示/隐藏”组中,单击“消息栏”。
在 Access 2007 中执行更新查询时,出现“操作或事件已被禁用模式阻止”。
选中“数据库工具”中的“消息栏”,然后单击“选项”。
选中“启用此内容”,确定。