4

.dbf(FoxPro)形式のデータベースを使用しています。

  1. Javaを使用してFoxProからデータを取得する方法は?
  2. データをMySQLに移行できる場合、変換を行うにはどうすればよいですか?
4

6 に答える 6

5

メモフィールドとCSVまたはExcelファイルには制限があるため、データを中間形式に変換することには欠陥があるようです。

より直接的なアプローチに興味がある場合は、「VFP2MySQLデータアップロードプログラム」や「Stru2MySQL_2」など、どちらもVisualFoxPro開発者によって作成されたものを検討できます。このダウンロードページでそれらを検索してください:

http://leafe.com/dls/vfp

DB-Convert(http://dbconvert.com/convert-foxpro-to-mysql-sync.php)は、役立つと思われる商用製品です。

リック・シュマー、VFP MVP

于 2010-05-23T03:06:15.057 に答える
3

XBaseJを使用して、単純なAPIを使用してJavaから直接FoxProデータベースのデータにアクセス(さらには書き込みを変更)することができます。

これにより、2つのアプリケーション(古いFoxProと新しいJavaのアプリケーション)を並べて、新しいアプリケーションが古いアプリケーションを置き換える準備ができるまでデータを絶えず同期することができます(たとえば、顧客はまだ多くのことを続けて信頼していますしばらくの間、古いアプリケーション)。

于 2010-06-26T08:42:59.680 に答える
2

FoxProのコピーはありますか?必要に応じて、データベースをHTMLファイルとして保存できます。次に、HTMLから、任意の形式で保存できます。私は最近、FoxProテーブルをExcelスプレッドシートとして保存するためにこれを行いました(Javaコードに使用することをお勧めします)。Javaの使用を計画している場合は、データにアクセスできるようになったら、Javaのネイティブストレージタイプの1つを使用してみませんか?

于 2010-11-04T19:30:44.060 に答える
1

FoxProデータのCSVエクスポートを実行してから、CSVを入力として受け取る小さなJavaプログラムを作成するのが最善の策だと思います。JavaでFoxProとMySQLの両方に接続するプログラムを作成することは、不必要に複雑であり、1回限りの移行を実行します。

ちなみに、PHPはMySQLにもデータを挿入するのに優れた仕事をすることができます。主なことは、MySQLスキーマでデータを取得するため、新しいアプリケーション(Javaであると想定しています)でデータを使用できることです。

于 2010-04-30T09:05:01.047 に答える
1

私は、プロジェクトがFoxProで行われていた場所で、同じプロジェクトに取り組んだ後、そのプロジェクトをMySQLを使用してJavaに移行しました。

データはExcelシートまたは.txtファイルに含まれていたため、FoxProデータの正確なレプリカとしてテーブルを作成し、データのインポート機能を使用してデータをExcel / CSV/txtからMySQLに転送しました。

これを実行したら、MySQLデータからさらに注意を払うことができると思います。

ただし、作業には時間がかかることを忘れないでください。辛抱強く待つ必要があります。

于 2010-04-30T09:07:39.293 に答える
1

2つのステップ:DBF=>CSVおよびCSV=>MySQL。

DBF(Foxproテーブル)をCSVに変換するには、以下のリンクが大いに役立ちます

http://1stopit.blogspot.com/2009/06/dbf-to-mysql-conversion-on-windows.html

CSV => MySQL MySQL自体がCSVインポートオプション(または)をサポートしてcsvファイルを読み取るこのリンクは http://www.csvreader.com/java_csv.php に役立ちますJava CsvReaderを使用してCSVファイルを読み取り、プログラムを介してレコードを挿入しました。そのために、PreparedSatement with Batchを使用しました。以下のリンクは、その http://www.codeweblog.com/switch-to-jdbc-oracle-many-data-insert/のサンプルを示しています。

于 2010-05-11T08:42:14.253 に答える