教程学院
图像设计 多媒体类 机械制图 办公软件 操作系统 系统编程 网站编程 网页制作 数据库类 网络路由 网络工程 网络安全 考试认证
firefox火狐浏览器下载
酷网学院
CAD
AutoCad Cam350 ProEngineer GCcam MATLAB Unigraphics SolidWorks CAXA Solid3000 Cimatron EdgeCAM
系统
安全 防火墙 病毒 WinXP Win2003 Vista
数据库
编程
网络
精彩图库
  当前位置: 库库中文网 · 系统编程教程 · PowerBuilder · PowerBuilder项目开发

数据保护地疑难和触发器地疑难

学院最新推荐文章
教程推荐
『数据保护地疑难和触发器地疑难』如果文章有大量图片,显示会较慢,请等待图片下载完成
 
点击数: 更新时间:2008-9-15 
两个问题一块提:
1、在物品入库时,定入入库单明细item_in_detail,定入有物品库存item_all,dw_mx绑定着item_in_detail表,插入数据后,用触发器自动往库存表中加数量。现在在窗口中(入库单)有个delete按钮,原意是如果录入错误可以通过此进行删除,但是当数据已经update,我只想删除再录入的数据,而不想删除原有保存的数据,该如何进行控制。
2、又有一个入库单修改的窗口,可以修改数量,我想修改完数量后在库存中相应进行数据的增减。
我写了delete触发器,select @itemid=item_id,@ph=ph from deleted,这个语句是不是只能触发临时表中的第一行数据,但为什么insert触发器这样写就没问题?
此问题大侠们有没有更好的解决方法?

这个问题第1个回答:
支持你 学习了
这个问题第2个回答:
if dw.GetItemStatus ( row, 0, Primary! ) =New! or dwcontrol.GetItemStatus ( row, 0, Primary! )=
NewModified! then
dw.DeleteRow(row)
endif

这个问题第3个回答:
风过的~~~~~~~~~~
这个问题第4个回答:
SQL code

create  trigger [dbo].[ut_update_itemall]

on [dbo].[item_out_detail]

for update

as

    declare @itemid varchar(8),

        @itemph varchar(10),

        @iteminsertnum int,

        @currentitemnum int,

                @itemid1 varchar(8),

        @itemph1 varchar(10),

        @iteminsertnum1 int,

        @currentitemnum1 int



    select @itemid =item_id, 

        @itemph = ph,

        @iteminsertnum =number 

from deleted 

    select @itemid1 =item_id, 

        @itemph1 = ph,

        @iteminsertnum1 =number 

from inserted 



select  @currentitemnum = count(*) from item_all where item_id=@itemid and ph=@itemph

if @currentitemnum=0 

begin

insert into item_all values (@itemid,@itemph,@iteminsertnum-@iteminsertnum1)

end 



else

begin

update item_all set number =number+@iteminsertnum-@iteminsertnum1 where item_id=@itemid and ph=@itemph

delete item_in_detail where number=0

end




这个问题第5个回答:
还是delete触发器的问题,后来用这样的语句结果达到要求了。望高手指点一二。

问题一按SummerHeart的方法已解决,谢谢了!!

作者:wlj768 来源:CSDN
】【关闭窗口
·上页:
·下页:
相关文章
     系统编程教程 - PowerBuilder项目开发
普通教程pb中运用ie浏览器控件能访问带框
普通教程怎么样在数据窗口导出地EXCEL文
普通教程pb9及以前版本,调用WebService
普通教程急救:pb怎么样生成可执行文件
普通教程请教各位!  我怎么样才能记录我
普通教程请高手指点,PB中怎么完成管理信
普通教程在PB中怎么把连接数据库中地一项
普通教程欄位地顯示問題
普通教程PB中怎么样用代码设计oracle地触
普通教程怎么样判断,运用程序已经运行
普通教程勿删,谢谢~~~
普通教程powerbuilder 和 powerdesigner
精彩图片汇集
advertisement
关于站点 - 广告服务 - 联系我们 - 版权隐私 - 免责声明 - 合作伙伴 - 程序支持 - 网站地图 - 返回顶部
网站文本地图
版权所有:库库中文 2005-2007 欢迎各种媒体转载我们的原创作品[转载请注明出处]
copyright © 2005-2008 www.QQGB.com online services. all rights reserved. 蜀ICP备05015578
Template designed by Virus. Optimized for 1024x768 to Firefox,Opera and MS-IE6. Site powered by EQL.
红盾
热爱电脑,热爱生活
拥有电脑,拥有生命
让我们享受拥有电脑的时光