 |
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
jtcom01
註冊時間: 2005-07-29 文章: 413
第 1 樓
|
發表於: 星期五 六月 06, 2008 12:43 pm 文章主題: grid如何插入一筆新資料..請教各位大大 |
|
|
如題..
範例..
1
2
3
4
5
5筆資料在grid中.我希望能插入一筆資料A在2-3中間.使grid的排列如下..
1
2
A
3
4
5
謝謝指導.. |
|
回頂端 |
|
 |
syntech
註冊時間: 2003-05-16 文章: 4249 來自: Taipei,Taiwan
第 2 樓
|
發表於: 星期五 六月 06, 2008 4:14 pm 文章主題: |
|
|
把記錄想辦法插在TABLE中間,並顯示出來.
GRID就跟著會以你TABLE的順序排列 _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
 |
jtcom01
註冊時間: 2005-07-29 文章: 413
第 3 樓
|
發表於: 星期五 六月 06, 2008 4:44 pm 文章主題: |
|
|
部是很懂大大你的意思..是否可以更明確的指導呢?謝謝你! |
|
回頂端 |
|
 |
green
註冊時間: 2003-09-19 文章: 137
第 4 樓
|
發表於: 星期日 六月 08, 2008 10:31 pm 文章主題: |
|
|
就是用排序的方式
要真實記錄的位置,效能會打折扣 |
|
回頂端 |
|
 |
syntech
註冊時間: 2003-05-16 文章: 4249 來自: Taipei,Taiwan
第 5 樓
|
發表於: 星期一 六月 09, 2008 9:22 am 文章主題: |
|
|
vfp 的物件設計,沒有"在grid中插入一筆記錄"這種事. _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
 |
jtcom01
註冊時間: 2005-07-29 文章: 413
第 6 樓
|
發表於: 星期一 六月 09, 2008 10:56 am 文章主題: |
|
|
懂了..謝謝各位先進指導..再次感謝.. |
|
回頂端 |
|
 |
tigerlee39y
註冊時間: 2007-11-26 文章: 132 來自: taipei
第 7 樓
|
發表於: 星期一 六月 09, 2008 9:32 pm 文章主題: |
|
|
在沒有排序的狀態下,插入一筆資料是不切實際的,在dbase3時代,在interprinter(立即式操作)可以在檔中插入一筆資料,但是寫成程式值行時,插入的那一筆仍然放在最後一筆
為何不切實際?試想如果有一個10萬筆的資料,你要插一筆資料在第2筆,原來的99,999筆資料都要一筆一筆往下推一筆電腦再快也要花上很久很久,使用者以為當機了,所以clipper或vfp的設計者都是把插入的資料放在最後一筆,這樣速度就很快
由此可見索引排序的重要性 _________________ 各取所需 各盡所能 |
|
回頂端 |
|
 |
syntech
註冊時間: 2003-05-16 文章: 4249 來自: Taipei,Taiwan
第 8 樓
|
發表於: 星期二 六月 10, 2008 10:38 am 文章主題: |
|
|
如果真的插一筆索引值應該是第二筆,但是實際記錄位置卻是在最後99999筆的話.
若是網路應用下的話,有INDEX可能也是滿慘的.
讓我想到,
以後作檔案重新整理,是不是應該依下列方式做:
1.SELECT * FROM TABLE1 into TABLE TMPTABLE1 WHERE !DELETED() ORDER BY F1,F2.....
2.DELETE FILE TABLE.*
3.RENAME TMPTABLE1 TO TABLE1
4.INDEX ON F1+F2.... TAG TA1
這樣子可以保證TABLE的資料分布符合locality of reference的情況,
搜尋速度會快一點. XD _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
 |
tigerlee39y
註冊時間: 2007-11-26 文章: 132 來自: taipei
第 9 樓
|
發表於: 星期二 六月 10, 2008 12:06 pm 文章主題: |
|
|
syntech兄講得不錯, 檔案的完整性還是很重要的,這就是"檔案重整"要作的工作
但是也不能每增加一筆資料就作一次重整,太費時費工了
那到底要多久作一次呢?見仁見智有所不同
我以前在政府機關時是每天午夜時檔案重整及備份各作一次,以確保資料安全
*------
事實上無論是以前的dbase,clipper或目前的vfp當我們執行pack之類的動作時,實際上系統的作法也是跟syntech兄所說的做法一樣,先copy資料出來,再還原檔名,只是我們看不到執行的過程,都是自動的 _________________ 各取所需 各盡所能 |
|
回頂端 |
|
 |
syntech
註冊時間: 2003-05-16 文章: 4249 來自: Taipei,Taiwan
第 10 樓
|
發表於: 星期二 六月 10, 2008 12:34 pm 文章主題: |
|
|
那就乾脆寫PACK , DELETE TAG ALL, INDEX ON 就好啦.
PACK 是不會重排記錄的. Orz _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
 |
tigerlee39y
註冊時間: 2007-11-26 文章: 132 來自: taipei
第 11 樓
|
發表於: 星期二 六月 10, 2008 3:06 pm 文章主題: |
|
|
sorry 是我講的不清楚,我只是要說明pack所作的實際動作(我測過)包括:
1.把所有未駐記delete mark的資料copy 到暫時檔
2.原檔刪除
3.暫時檔轉回原檔
4.暫時檔刪除
而不是一般人想像的直接把原檔直接作壓縮之類的
這一切都是自動的,這些動作類似syntech兄說的(只是類似),當然記錄是不會重排的
如要重排記錄,也可以:
1.use aaa order tag no exclu
2.copy to bbb
3.zap
4.appe from bbb
copy 的速度比sql可能慢,也有好處,不必去回想當初到底設了那些索引
我之所以未特別說重排記錄,是因為一個dbf可能有好幾種排序,如果按第1種排序,插入的那一筆應該排在第2筆,按其它種排序又可能要排在50000筆,按第3種排序又可能要放在80000筆,那重整時到底要把插入的那一筆放到那裡才正確呢?乾脆順其自然也是一種方法,只靠索引來控制就好了 _________________ 各取所需 各盡所能 |
|
回頂端 |
|
 |
syntech
註冊時間: 2003-05-16 文章: 4249 來自: Taipei,Taiwan
第 12 樓
|
發表於: 星期二 六月 10, 2008 6:34 pm 文章主題: |
|
|
小聲的說,其實我們系統已經這樣做超過10年了. _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
 |
tigerlee39y
註冊時間: 2007-11-26 文章: 132 來自: taipei
第 13 樓
|
發表於: 星期四 六月 12, 2008 12:59 am 文章主題: |
|
|
欣慰 所見略同 ! 謝謝 _________________ 各取所需 各盡所能 |
|
回頂端 |
|
 |
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|