2014-04-30 3 views
0

에 FoxPro 데이터베이스에서 인덱스 내가 MySQL로 FoxPro에 데이터베이스를 변환하는 임무를 봤는데 내가 구조를 내보내는 방법을 알 필요가/엑셀에 FoxPro 데이터베이스의 인덱스. FoxPro에서 해당 유형의 정보를 내보낼 수 있습니까?추출 구조/엑셀

는 내가 거기에 대한 변환이 종류의 일을 거기 도구가 있지만이 예산으로 인해 거부 된 것을 알고있다. 우리는 모든 컨테이너와 dbfs를 자동으로 변환하는 특수화 된 변환 스크립트를 작성하기를 원했습니다.

미리 감사드립니다.

답변

1

는 MySQL의에 VFP에서 데이터를 마이그레이션하기위한 다양한 무료 도구가 있습니다.

이 데이터 업로드 프로그램입니다 및 도구의 몇 MySQL은 비주얼 폭스 프로에서 현재 선택한 별칭에서 TABLE 스크립트를 만들 만들 수 있습니다. 수동으로 다음 엑셀 경로를 추구하려는 또는 경우

...

당신은 테이블 MYTABLE이있는 경우.다음과 같은 구조 DBF :

Structure for table:   C:\TEMP\MYTABLE.DBF 
Number of data records:  0  
Date of last update:   01/05/2014 
Code Page:     1252  
Field Field Name   Type      Width  Dec Index Collate  Nulls  Next  Step 
    1 FIRSTNAME    Character      20         No 
    2 LASTNAME    Character      20         No 
    3 AGE     Numeric       3         No 
    4 ID     Integer (AutoInc)    4    Asc Machine  No   1   1 
** Total **             48 

그런 다음이 같은 VFP 명령 창을 통해 다른 DBF에 구조를 덤프 할 수 있습니다

cd \temp 
use mytable 
copy structure extended to mytablestruct.dbf 

그런 구조 정보를 포함하는 테이블을 열고 덤프 수 있습니다 Excel에서

use mytablestruct 
copy to struct.xls type xl5 

과 같이 표시됩니다 :

0 XLS 형식으로 인덱스와 관련하여 12,345,

이 같은 작은 루틴을 코딩 할 것이다 :

Create Cursor indexinfo (idxname C(254), idxtype c(254), idxkey c(254), ; 
     idxfilter c(254), idxorder c(254), idxcoll c(254)) 
    Use mytable In 0 
    Select mytable 
    lnTags = ATagInfo(laTemp) 
    For i = 1 to lnTags 
     Insert into indexinfo values (laTemp[i, 1], laTemp[i, 2], laTemp[i, 3], laTemp[i, 4], laTemp[i, 5], laTemp[i, 6]) 
    EndFor 
    Select indexinfo 
    Copy To indexinfo.xls type xl5 

을 결과 indexinfo.xls 열기 :

enter image description here

1

당신은 FoxPro에에서 그것을 할 수 있고, Excel로 정보를 내보낼 필요가 없습니다,에서 FoxPro는 MySQL의에서 데이터베이스/테이블/인덱스를 다시 capabale합니다, 그리고 기록을 업로드 할 수 있습니다.

난 그냥 FoxPro에 명령을 사용하여 MySQL의 모든 FoxPro 테이블을 업로드 할 수있는 도구를 개발했다.

도구 폴더에서 gendbc.prg를 확인하고 필요에 맞게 수정하십시오.

MySQL에 대해 일부 필드 유형 변환을 수행해야합니다. 또한 데이터를 업로드하려는 경우 날짜/날짜가 포함 된 몇 가지주의 사항이 있습니다.

빈 VFP 날짜 필드를 MySQL에서 '0000-00-00'으로 바꾸고 '0000-00-00 00:00 : 00 '비어있는 datetimes. > "마법사"- -> "업 사이징"

몇 가지 유용한 명령은 "도구"에서 AFIELDS, ATAGINFO

+0

가 답장을 보내 주셔서 감사합니다! FoxPro 명령을 사용하는 것이 가능하다는 소식을 듣고 매우 기쁩니다. gendbc.prg를 어떻게 볼 수 있습니까? gendbc.prg를 보려면 modi comm 명령을 수행하십시오. 나는 FoxPro 8을 가지고 있습니다. 당신이 개발 한 도구로 MySQL에 대한 FoxPro 색인을 가지고 있습니까? – klm10

0

모든 좋은 점 ... 또한 VFP를 사용하면 메뉴로 할 수 있습니다. 데이터베이스에 연결해야하며 대부분의 물건을 안내 할 것입니다.

전체 데이터베이스를 업 사이징하거나 마법사 프로세스 중에 개별 테이블 만 업 사이즈 할 수 있습니다. 당신이 Leafe.com에서 다운로드 영역을 보면

+1

그렇습니다. 그러나 업 사이징 마법사는 Microsoft의 SQL Server에서 작동하며 OP에서 언급 한 MySQL에서는 작동하지 않습니다. –