全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1215
推到 Plurk!
推到 Facebook!

TStored proc的錯誤

缺席
foxtw1983
一般會員


發表:4
回覆:1
積分:1
註冊:2007-08-02

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-09-19 17:06:02 IP:59.124.xxx.xxx 訂閱

[code delphi]
if (@CurrentCid >= @UpdateCid) begin
set @UpdateCid = @CurrentCid
set @upd_str ='update MemberInfo set AccGroupPV=AccGroupPV ' @strpv

if (@count=1 and (@ChildCid=0 or @NewClass=0)) begin
set @temp=''
if (@OverG1GuestPV = 0) begin
set @temp=', G1GuestPV=G1GuestPV ' @strpv
select @newg1=G1GuestPV @pv from memberinfo where id=@CurrentId
end else begin
set @temp=', G1GuestPV=G1GuestPV-(' @strOverG1GuestPV ') ' @strpv ', OverG1GuestPV=' @strOverG1GuestPV
select @newg1=G1GuestPV-OverG1GuestPV @pv from memberinfo where id=@CurrentId
end
set @upd_str=@upd_str @temp
--加入g1log
insert into g1log(id,G1GuestPV,npreguestpv,nid,saleid,pdate)
values(@Id,@newg1,@CurrentPreGuestPV,@CurrentId,@strId,convert(char(12),getdate(),111))
if (@@error != 0) or (@@rowcount=0) begin
set @error='計算上線積分錯誤'
raiserror(@error,16,1)
rollback tran
return
end

set @upd_str=@upd_str @temp
end
set @strCurrentId=str(@CurrentId)
set @upd_str=@upd_str ' where Id=' @strCurrentId --@CurrentId此時應是原來的上線而非@ParentId
--update MemberInfo set GroupPV=GroupPV @PV,AccGroupPV=AccGroupPV @PV, TeamPV=TeamPV @PV where Id=@CurrentId

exec(@upd_str)
if (@@error != 0) or (@@rowcount=0) begin
set @error='計算上線積分錯誤'
raiserror(@error,16,1)
rollback
return
end
[/code]

以上這段程式是前輩寫的預存程序(MS SQL 2005)~在studio裡面跑是OK的~但是實際上在delphi3
上跑卻出現此段問題' 資料行名稱G1GuestPV 在結果資料清單中出現不只一次'
之後繼續跑又出現'couldn't perform the edit because another user changed the record'
不知道以上這段程式提供的足不足~但是我找到問題應該是這段吧~
希望各位前輩們可以給我點意見~感謝~
qqqufo
一般會員


發表:1
回覆:17
積分:8
註冊:2007-06-01

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-09-24 17:28:09 IP:218.85.xxx.xxx 訂閱
这段代码杂着 HTML代码,不清楚,楼主重发一下吧。
系統時間:2024-05-17 20:08:52
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!