2012-01-04 5 views
0

私はいくつかの古いdbfファイルのデータを読み書きするC#アプリケーションに取り組んでいます。 (Microsoft Visual FoxProを使用してドライバ) 私は以前に使用したテーブルを照会しようとしたときに、これまで何の問題もなく、このエラーメッセージが出ました。このテーブルは500以上のカラムを持っているので多少特別ですが、これはこれと関連があるかもしれないと思っていますが、これまでどんな問題を引き起こしているかはわかりません。Foxpro - エラー15: "Not A Table"

私はthis documentを見て、ヘッダーレコード数が実際のカウント(1レコード)と一致することを確認しました。 この文書は、私が今までに見つけた唯一の良いヒントです。重いdbf修復ツールは必要ありません。

Microsoft Visual FoxProとVFPOLEDBドライバの両方を使用してみましたが、どちらも同じエラーメッセージが表示されます。

私はTableValidate = 0コマンドを成功させることなく試してみました。

誰かがこの問題を解決/回避するための方法について経験がありますが、C#を使用することをお勧めします。

+0

テーブルが存在するdbfのサイズは? –

+0

ありがとうございます - dbfのサイズは25KBです。 – Robban

+0

私は、エラーの原因の1つが2GBを超えるdbfサイズである可能性があることを読んだので、私は尋ねました。他のサイトでは、データベースが壊れていると言い、プログラムを使用してdbfを修正するとエラーが取り除かれます。あなたはデータベースのバックアップを作成し、その上で修正プログラムを試すことができます。 –

答えて

0

テーブルが破損している場合は、CmRepair.appを使用して修正できます。このプログラムはVisual Foxpro 8アプリケーション(コンパイルされた.EXEではありません)ですので、VFPで実行する必要があります。

VFPがインストールされていない場合は、utility programをダウンロードして、VFPがインストールされていないお客様にVFPスクリプトと.APPを実行させることができます。 VFP8のランタイムはhereです。次に、runner CmRepair.appでプログラムを実行し、テーブルを修復します。

幸運を祈る!

4

VFPテーブルは500列をサポートしていないため、これはVFPテーブルではありません。どのようなテーブルであるかを調べ、適切なドライバを使用してテーブルを開く必要があります。

0

Tamarのコメントから、私は、.DBFファイル形式を使用するさらに別のアプリケーションデータベースを考えていました。ここでは、そのテーブルの容量を説明したリンクは、これはあなたが探しているミッシングリンクかもしれません。..

Apollo database - (Clipper)

です。