2014-04-09 27 views
0

我希望有人能夠幫助,我一直在這個問題上敲我的頭。將Foxpro表拆分成許多其他表格

我有兩個表。一個擁有全球地址數據,另一個擁有國家名稱。

我想根據國家名稱爲每個國家創建單獨的表格 - 例如我想查看國家名稱表格,取第一個國家名稱,然後掃描地址表格,選擇正確的記錄,然後選擇將它們保存到以國家名稱作爲文件名的單獨表格中,正好通過國家名稱文件。例如

australia.dbf; 
belgium.dbf etc. 

我知道它涉及到使用遊標和SCAN,但無法讓我的頭在語法周圍。

謝謝

+0

我真的不認爲你想這樣做,因爲你會denormalising你的數據。 – gvee

回答

1

這應該得到你所需要的。我也讓它創建一個從「PerCountry」運行的子文件夾,因此每個國家都將放入該文件夾。你顯然可以在事後離開。

MD "PerCountry" 

SELECT distinct country; 
    FROM globalAddresses; 
    INTO CURSOR C_JustCountry READWRITE 

SELECT C_JustCountry 
SCAN 
    */ If a country has ANY spaces, change them to underscores 
    cCurrentCountry = C_JustCountry.Country 
    cNewOutputFile = "PerCountry\" + CHRTRAN(ALLTRIM(C_JustCountry.Country), " ", "_") 

    SELECT * ; 
     from globalAddresses ; 
     where country = cCurrentCountry ; 
     INTO TABLE &cNewOutputFile 
ENDSCAN 

CLOSE TABLES all