從 DBF 檔是否就可知道其是使用那些欄位當索引 |
缺席
|
thomas0728
中階會員 ![]() ![]() ![]() 發表:112 回覆:260 積分:89 註冊:2002-03-12 發送簡訊給我 |
|
P.D.
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
|
Mickey
版主 ![]() ![]() ![]() ![]() ![]() 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
P.D.
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
引言: DBASE IV : DBF 第32Byte起(0-31 Bytes 是 File Structure), 之後每 32 bytes (Field descriptor Array 每個 32 bytes), 若 33 byte 是 0DH 則表是最後一個 Field Descriptor. 每個 Field Descriptor 的最後一個 byte 若為 01H 則表示有建 index 在此 Field, 00H 則無 index.不過要去解開這樣的內容, 好像不容易, 另外, 如果dbf的index是 field1 field2的話, 不知在byte上是如何解? 謝謝! |
Mickey
版主 ![]() ![]() ![]() ![]() ![]() 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
P.D.
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
引言: P.D. 兄 : 這是光從 DBF File Format Specification 節錄的. 小弟並未真正測試過 Field1 Field2 ... 等, 多 Fields Index 是如何的紀錄於 Field descriptor |
Mickey
版主 ![]() ![]() ![]() ![]() ![]() 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
P.D.
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
|
thomas0728
中階會員 ![]() ![]() ![]() 發表:112 回覆:260 積分:89 註冊:2002-03-12 發送簡訊給我 |
各位大大
謝謝大家的回應,我想我說明一下我要這樣做的原因
我有一套 dos 時代寫的人事考勤系統,中央信託局現在在用,裡面大約有一百多個 dbf,刷卡檔的資料約有一百多萬筆,我現在寫一支自動定時備份程式,會把 dbf 裡的資料轉到 ms sql 2000 上,如果一個 dbf 一個寫轉檔,那會寫死,且以後如果新增 dbf 那可也要在加寫,所以我用程式自動重某個目錄底下讀進 *.dbf 的檔案,在用 adodateset 去開啓它,然後判斷有那些欄位及每個欄位的資料型態,在到 sql 上去找有沒有相對的 table,如有有則比對雙方的資料,把新增的資料轉進 sql 裡,但這時一定要知道每個 dbf 的主鍵值是由那些欄位串接而成的,且資料型態是否需要轉換,我現在是在建立一個 table 對照表,勉強可以達成我要的功能,如果能自動判斷 dbf 的主鍵值是由那些組成,那程式就更厲害了,就變成通用的資料轉檔程式,對於交易檔也可以在轉完檔之後清掉某些時段的資料了
------
Thomas Chiou |
P.D.
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
引言: 各位大大 謝謝大家的回應,我想我說明一下我要這樣做的原因 我有一套 dos 時代寫的人事考勤系統,中央信託局現在在用,裡面大約有一百多個 dbf,刷卡檔的資料約有一百多萬筆,我現在寫一支自動定時備份程式,會把 dbf 裡的資料轉到 ms sql 2000 上,如果一個 dbf 一個寫轉檔,那會寫死,且以後如果新增 dbf 那可也要在加寫,所以我用程式自動重某個目錄底下讀進 *.dbf 的檔案,在用 adodateset 去開啓它,然後判斷有那些欄位及每個欄位的資料型態,在到 sql 上去找有沒有相對的 table,如有有則比對雙方的資料,把新增的資料轉進 sql 裡,但這時一定要知道每個 dbf 的主鍵值是由那些欄位串接而成的,且資料型態是否需要轉換,我現在是在建立一個 table 對照表,勉強可以達成我要的功能,如果能自動判斷 dbf 的主鍵值是由那些組成,那程式就更厲害了,就變成通用的資料轉檔程式,對於交易檔也可以在轉完檔之後清掉某些時段的資料了 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |