同一数据窗口pb9下删除数据正常,pb11.5下删除报错,请高手指点。
本帖最后由 csqqx 于 2012-03-31 16:42:21 编辑 本人开发一程序,数据库是sql2000,以前版本是pb9开发可以正常使用,后换成pb11.5出现问题,pb9是用pb自带sql接口,pb11.5是用snc sql接口,数据窗口一模一样,保存数据正常,但是删除数据后保存报错。数据库对应表有触发器,删除该表触发器后能正常保存。问题是该表触发器不能删除。触发器代码如下:
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
--处理删除的情况
ALTER trigger [dbo].[tr_wf_hosp_detail_price_delete]
on [dbo].[hosp_detail_price]
for delete
as
insert wf_ybfymx_temp
select DETAILID,hospid,mediid,isprice,ischeck,isconfirm,0 - user_num,UNITPRICE,0 - price,date3
from deleted
where price<>0 and isconfirm=1 and isprice=1 and ischeck=1 and hospid in (select hospid from wf_ybxx where planamount is null)
请问pb11.5是不是不允许这样写触发器吗?求高手指点!
[解决办法]
查下返回的错误信息吧。sqlca.sqlerrtex
[解决办法]
数据窗口错误信息如下:(直接在开发环境删除也是这种提示)
Row changed between retrieve and update.
No changes made to database.
DELETE FROM doctmark_charge WHERE priceid = 2685433
[解决办法]
代码有问题,检查一下代码的顺序。
[解决办法]
应该是数据同步的问题了,查看下update设置项.代码的逻辑可定有问题。
[解决办法]
应该是数据更新的问题,看看条件是什么
[解决办法]
问题解决了,什么原因我不知道。我把那个触发器代码改成游标形式就可以了。
反正跟pb11.5有关系,虽然改的是数据库的表触发器。