線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:997
推到 Plurk!
推到 Facebook!

SQLServer Procedure 資料指標的問題

缺席
JamesLiang
初階會員


發表:54
回覆:78
積分:31
註冊:2003-02-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-04-30 13:43:05 IP:63.201.xxx.xxx 未訂閱
請教先進..我寫了個procedure目的是將資料庫裡的欄位資料寫入另個table, 因為需由縱向的資料存入橫向的欄位因此使用資料指標的方式(類似陣列),想請教的是如何讓資料指標內的變數在迴圈開始時清為0?現在我處理完後發現若紀錄中不存在該欄位時會將上次的值存入,例如我縱向的資料庫記錄中有的紀錄沒有 itemno為218,但存入橫向紀錄的欄位名稱為218的值應該為0但卻存入不相干的值 請教我該如何處理 多謝
chimera
初階會員


發表:62
回覆:78
積分:28
註冊:2003-03-22

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-04-30 13:53:44 IP:203.69.xxx.xxx 未訂閱
我是有一個想法就是把舊table的值欄列轉向後填入到stringgrid中,遇到值為nil時填入0,然後再把stringgrid中的資料塞進新table中,不知這樣的想法你可以接受嗎??
chimera
初階會員


發表:62
回覆:78
積分:28
註冊:2003-03-22

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-04-30 14:14:27 IP:203.69.xxx.xxx 未訂閱
像這樣: procedure TForm1.BitBtn1Click(Sender: TObject); var i,j:integer; begin table1.open; table2.open; stringgrid1.fixedcols:=0; stringgrid1.fixedrows:=0; stringgrid1.RowCount:=table1.FieldCount; stringgrid1.ColCount:=table1.RecordCount; table1.first; for j:= 0 to (stringgrid1.colCount-1) do begin for i:= 0 to (stringgrid1.rowcount-1) do begin if table1.fields[i].asstring <> '' then stringgrid1.cells[j,i]:=table1.Fields[i].AsString else stringgrid1.cells[j,i]:='0'; end; table1.Next; end; table2.first; for i:= 0 to stringgrid1.rowcount - 1 do begin table2.append; table2.Fields[0].asstring:=stringgrid1.cells[0,i]; table2.Post; end; table2.first; for i:= 0 to stringgrid1.rowCount - 1 do begin for j:= 1 to stringgrid1.colcount - 1 do begin table2.edit; table2.fields[j].asstring:=stringgrid1.cells[j,i]; table2.post; end; table2.next; end; end; 發表人 - chimera 於 2003/04/30 15:25:35
系統時間:2024-06-02 20:26:15
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!