문제

나는 기존 시스템을 가지고있는 클라이언트와 함께 역설 데이터베이스를 구축하고 있습니다. .db, .mb 및 .px 파일을 포함하는 zip 파일 형식의 데이터베이스가 각 테이블에 대해 하나씩 있습니다.

이 데이터를 가져 와서 MySQL을 사용하는 웹 응용 프로그램으로 가져와야합니다. 이 데이터를 추출 할 수있는 방법이있는 사람이 있습니까?

그렇지 않다면, 역설은 읽을 수있는 형식으로 수출합니까? SQL 또는 합리적으로 쉽게 구문 분석 할 수있는 것입니까? 내 고객을 위해이 시스템을 담당하는 사람은 자원 봉사자 (비영리 단체)이므로 솔루션으로 그에게 가고 싶습니다. 지난번에 데이터를 요청했기 때문에 이것을 얻었습니다. 분명히 좋지 않습니다.

도움이 되었습니까?

해결책

DOS의 역설과 Windows 플랫폼의 역설은 모두 구분 된 텍스트, 고정 길이 텍스트 및 Lotus 1-2-3 형식으로 데이터 테이블을 내보낼 것입니다. DOS의 오래된 역설은 Lotus Symphony를 쓴 반면, Windows의 약간 덜 앤티크 역설은 통과 가능한 Excel 5를 수행합니다.

그러나 누군가는 앉아서 테이블을 하나씩 내보내거나 대본을 작성해야합니다. 물론 스크립트를 작성하려면 역설을 설치해야합니다.

-AL.

다른 팁

그만큼 역설에 관한 Wikipedia 기사 GPL 라이센스에 따라 중간에있을 수있는 다른 두 가지를 나열합니다.

그리고 델파이가 있고 컨버터를 직접 작성하고 싶다면 (BDE가 필요합니다) 살펴볼 수 있습니다. 이 기사 또는 소스 코드에서 이 웹 사이트에서 ConvertCodelib. 둘 다 CD (바이너리 형식) 또는 XML 파일을 작성할 수있는 tclientDataset을 사용합니다.

MS가 있습니다 지침 MS Jet 드라이버를 사용하여 Paradox 3-5에서 생성 된 파일의 데이터를 읽습니다. 그것은 ODBC 드라이버로 (적어도) (적어도) ODBC 사용 방법을 알고있는 모든 것의 역설 파일을 읽는 데 사용될 수 있습니다.

몇 가지 옵션이 있습니다.

  1. 원래 Paradox 소프트웨어에 손을 대고 사용하여 데이터베이스를 내보내십시오. CSV 체재. 불행히도, Borland는 더 이상 판매하지 않으며 가장 최근 버전은 Windows XP 이상에서 잘 작동하지 않습니다.
  2. 역설 또는 DBase/XBase ODBC 드라이버를 사용하여 데이터베이스에 액세스하십시오. Paradox와 Xbase는 매우 유사하므로 둘 중 하나를위한 드라이버를 사용하여 데이터를 추출 할 수 있습니다. 당신은 어딘가에 역설 ODBC 드라이버를 얻을 수 있습니다. Firebirdsql.org.
  3. Borland Delphi를 사용하여 필요한 데이터를 내보내는 프로그램을 작성하십시오. 다른 사람이 언급했듯이, 당신은 터보 탐색기. Turbo Explorer와 함께 제공되지 않으므로 BDE를 별도로 설치해야합니다.

나는 역설에서 MySQL로 거대한 데이터 마이그레이션을 진행하고 있습니다. 내 일반적인 접근 방식은 Paradox에서 CSV 파일을 내보낸 다음 MySQL 명령 줄에서 CSV 파일을 가져 오는 것입니다. 그러나이 시스템은 Paradox에 M (메모) 필드가있을 때 분해됩니다.이 데이터는 예상대로 CSV 파일로 가져 오지 않기 때문입니다.

여기에 MySQL에 역설 데이터를 얻는 오랫동안 가인 과정이 있습니다. 누군가가 도움이되기를 바랍니다!

  • Paradox에서 Paradox 파일을 열고 dbase (.dbf) 파일로 내보내십시오. 이것이하는 일은 메모 데이터를 DBase의 블로브 형식으로 내보내는 것입니다.

  • Paradox에서 .dbf 파일을 엽니 다. DBFViewer에서 열기 전에 이중 형식을 긴 정수 또는 숫자로 변환해야 할 수도 있습니다. 이중 형식은 작동하지 않는 것으로 보입니다. 파일을 저장.

  • 이 프로그램을 사용하여 DBase 파일을 열고 Excel로 내보내십시오. http://dbfviewer.org/내보내기 -> xls -file… 이것은 Excel에서 열립니다.

  • 이제 Excel은 CSV 필드를 따옴표 또는 다른 것을 둘러싼 기본 방법이 없기 때문에 매크로를 만들어야합니다. 아래의 매크로를 붙여 넣었지만 여기에 내가 찾은 참조 사이트가 있습니다. 한 사이트에는 더 나은 지침이 있었지만 텍스트가 손상되었습니다.http://www.mrexcel.com/forum/showthread.php?320531-export-as-csv-file-enclosed-quoteshttp://www.markinns.com/articles/full/export_excel_csvs_with_double_quotes/

  • Excel에서 모두 "Ctrl-F로"모든 것을 대체합니다.

  • Excel에서 Alt -F11을 눌러 매크로 인서트 -> 모듈을 열어 두어이 매크로를 생성하여 CSV 파일을 이중 따옴표로 둘러싸고 있습니다.

    서브 CSVFILE ()

    Dim SrcRg As Range
    Dim CurrRow As Range
    Dim CurrCell As Range
    Dim CurrTextStr As String
    Dim ListSep As String
    Dim FName As Variant
    FName = Application.GetSaveAsFilename("", "CSV File (*.csv), *.csv")
    
    If FName <> False Then
    ListSep = Application.International(xlListSeparator)
    If Selection.Cells.Count > 1 Then
    Set SrcRg = Selection
    Else
    Set SrcRg = ActiveSheet.UsedRange
    End If
    Open FName For Output As #1
    For Each CurrRow In SrcRg.Rows
    CurrTextStr = ""
    For Each CurrCell In CurrRow.Cells
    CurrTextStr = CurrTextStr & """" & CurrCell.Value & """" & ListSep
    Next
    While Right(CurrTextStr, 1) = ListSep
    CurrTextStr = Left(CurrTextStr, Len(CurrTextStr) - 1)
    Wend
    Print #1, CurrTextStr
    Next
    Close #1
    End If
    End Sub
    
  • 그런 다음 실행 -> 매크로를 실행하십시오

  • Blobs가 가고 싶은 텍스트 필드가있는 대상 MySQL DB 스키마 설정

  • MySQL 명령 줄에서 여기에 가져 오는 방법의 예는 다음과 같습니다.

    로컬 Infile 'c : /data.csv'는 ' r n'(column1, column2)에 의해 종료 된 라인에 의해 종료 된 'table_name 필드'에 'c : /data.csv'

Paradox는 다양한 Delphi 프로그래밍 제품에 포함 된 Borland 데이터베이스 엔진의 기본 형식입니다. 소유권은 최근에 한 번도 한 번도 손을 바꿨지 만, 어느 시점에서 델파이의 무료 "Express"버전이 있었는데이 물건을 내보내는 간단한 프로그램을 작성할 수있었습니다. 무료 버전을 더 이상 사용할 수없는 경우 사용 가능한 가장 낮은 SKU에는 BDE 기능이 포함되어야합니다.

MS Access 2007을 사용하면 Free Paradox Database 편집 프로그램 (Google IT)에 포함 된 BDE 배포를 사용하여 Paradox 7 이하를 가져올 수 있습니다. 다음과 같은 연결을 사용하십시오.

DoCmd.TransferDatabase acImport, "ODBC Database", _
    "Paradox 3.X;HDR=NO;IMEX=2;ACCDB=YES;DATABASE=C:\apache\Archive;TABLE=Messages#db", _
    acReport, DailyArchiveName, "MyDatabase"
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top