问题不难但我不会请大家过来看看,会的就耽误一下您的宝贵时间帮帮我 ( 积分: 50 )

  • 主题发起人 主题发起人 lxw4292
  • 开始时间 开始时间
L

lxw4292

Unregistered / Unconfirmed
GUEST, unregistred user!
CREATE TRIGGER [TRck] ON [dbo].[fCK]
FOR INSERT
AS
BEGIN

UPDATE TCKZD
SET fZhuYunDan=A.fZhuYunDan ,fJiaoHuoDate=A.fJiaoHuoDate, fMuDiZhan=A.fMuDiZhan,fShiFaZhan=A.fShiFaZhan, fWeiTuoDanWei=A.fWeiTuoDanWei
from inserted A
where fInstID=A.fID

END
其中fInstID定义的是fCK的外键fID没有定义成主键,这个东西我不会定义
我是想实现这样的功能,我在录入界面中输入fZhuYunDan后如果TCKZD中如果已经有了这个刚输入的fZhuYunDan的内容就不做任何操作如果没有就打开一个新的窗口来为TCKZD输入一些内容,但这些内容不包括上面要更新的内容,当fCK录入完毕后就用fCK刚录入的内容来更新TCKZD的内容,我知道怎么操作请大家帮帮我
现在 是这样当我为fCK插入记录时报错提示是这样的
提示:删除失败
无法为更新定位行。一些值可能在最后一次读取后已更改。(错误码:32)
 
是我的问题太难了还是我说的不清楚呢?
 
怎么还是没有好心人帮我解决呀
 
好急呀,难道这个问题太难了吗?是没人会还是没人想帮我呢急死我了
 
无法为更新定位行。
这个错误是很普遍的错误,根本原因在于数据库表缺少主键。在数据更新后,数据库不知道去定位哪一条纪录了。
如果是我,最简单的办法就是加一个自增的字段,比如UID字段,让他自增,由数据库管理,并且设置为主键。这样的话,数据库每次都可以找到唯一纪录了。
 
我已经定义主键了但就是不行
 
后退
顶部