VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

请问:sql server触发器如何批量更新?

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
raylian



註冊時間: 2006-08-09
文章: 25


第 1 樓

發表發表於: 星期二 十月 30, 2012 4:35 pm    文章主題: 请问:sql server触发器如何批量更新? 引言回覆

1. 有sql server表setjg ,字段: partno varchar(25), flowno varchar(10),price numeric(10,2)

2.有sql server表setjg1,字段同上.

3.当修改setjg表中栏位price时触发更新setjg1,为什么只更新到最后一笔资料?


我的触发器代码如下:
USE [edpdbtms]
GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER TRIGGER [dbo].[trjg] ON [dbo].[setjg]
FOR update
AS

Declare @partno varchar(25)
Declare @flowno varchar(10)
Declare @price numeric(10,2)

BEGIN

--更改
IF EXISTS(SELECT 1 FROM inserted) AND EXISTS(SELECT 1 FROM deleted)
begin

Declare temp_rec Cursor for
select b.partno,b.flowno,b.price,b.remark from deleted b
inner join inserted a on b.partno=a.partno and b.flowno=a.flowno

open temp_rec

Fetch next From temp_rec
into @partno,@flowno,@price,@remark

While @@fetch_status=0
begin
insert INTO setjgrec(partno,flowno,price)
values(@partno,@flowno,@price)
Fetch next From temp_rec
Into @partno,@flowno,@price
end

Close temp_rec
Deallocate temp_rec

end
END
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
raylian



註冊時間: 2006-08-09
文章: 25


第 2 樓

發表發表於: 星期三 十月 31, 2012 10:24 am    文章主題: 引言回覆

没问题了,是这样,原来是前端只更新了一条记录.
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作