关于Delphi和触发的问题,修改数据会出现提示:“现键列信息不足或不正确” 20

我用DBGrid显示SQL表xxx的内容,用了触发器将表xxx某列更新到表aaa和bbb中去,已修改DBGrid的任何信息数据就会报错“现键列信息不足或不正确”,但数据库... 我用DBGrid显示SQL表xxx的内容,用了触发器将表xxx某列更新到表aaa和bbb中去,已修改DBGrid的任何信息数据就会报错“现键列信息不足或不正确”,但数据库信息能成功更新,但直接在SQL查询分析器里update数据则没有任何报错。我试过把三个表都设置了主键,而且在触发器也设置了set nocount on,报错依然提示,怎么解决? 展开
 我来答
守意如城
2015-08-24 · TA获得超过107个赞
知道小有建树答主
回答量:134
采纳率:50%
帮助的人:21.6万
展开全部
表aaa和bbb,都分别对应有一个TDataSetProvider控件吧?修改它们的UpdateMode为upWhereKeyOnly,再试试。
追问
没有添加TDataSetProvider控件,只有adoconnection,adoTable,DataSource,DBGrid。没有在Delphi的控件中添加任何SQL语句。三个表:xxx,aaa,bbb(三个表都是独立的)   xxx是总表,aaa和bbb是分表,总表xxx修改过的内容要和分表涉及的数据同步,所以我在总表xxx创建了触发器。
匿名用户
2015-08-24
展开全部
你这个是多表啊 是不是使用了这个控件的自动更新出的问题?
更多追问追答
追问
是单表,DBGrid只连接一个表
追答
你贴出来的这个吧?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式