• ベストアンサー

ほかのアプリケーションからAccessにエクスポートしたとき

今OCR認識ソフトからデータをAccessにエクスポートしています。 OSは Windows2000Professional SP2で、Access2000を使っています。 OCRソフトから「1,2,3,4」の順番でデータをAccessにデータをエクスポートしたつもりですがAccessのテーブルには「2,3,4,1」の順番で格納されています。 しかも問題のデータを繰り返してAccessにエクスポートしてみても必ず再現するものではないです。 Accessのテーブルには主キーを設定してないです。 主キーを設定しなかった場合こう言う現象はやっぱり起こりうることなんでしょうか? 教えてください、よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • TMINET
  • ベストアンサー率32% (45/140)
回答No.4

再レスです。 作業量から言えば2.がいいでしょうね。 ただ、どのようにエクスポートされているのでしょう? アプリからAccessへダイレクトに行っているのでしょうか? 私はエクスポートしたCSVか何かをAccessからインポートするイメージなのですが。 後者ならテーブルの最後にオートナンバーカラムを追加するだけでいいですね。 前者ですとどうなるかはわかりません。

その他の回答 (3)

  • TMINET
  • ベストアンサー率32% (45/140)
回答No.3

キーの指定していないテーブルですとそうなります。 ソートの基準がないためです。 RDBはファイルの様に必ずしもデータの格納場所が順序よく並ぶわけではありません。 通常はテーブルに取り込んだ順に並ぶことになりますがインポートやエクスポートといった一括処理では内部処理でのデータの並び順までは保証できません。 フラグメンテーションのせいで格納アドレスがジャンプしてしまったら、もう順番なんてわかりませんからそのような事が起こります。 ソート用のカラムを作ることを勧めます。

rimimi
質問者

補足

ソート用のカラムを作るとおっしゃいましたが、 1.エクスポート元のアプリケーションでソート用のカラムを用意してデータといっしょにエクスポートし、エクスポート先のAccessテーブルにでそのカラムでソートをかける必要がある? 2.Accessの側でオートナンバーのようなカラムを追加することによってデータは順番どおり格納される? の二つの解釈をして見ましたが”TMINET”さんはお勧めはどっちでしょうか?

  • yuji
  • ベストアンサー率37% (64/169)
回答No.2

RDBMSでは、格納されている順序には、ほとんど意味はありません。 内部的には2,3,4,1 の順序に格納されていたとしても、 SELECT .... ORDER BY XXXX をつけることによって期待した順序を得ることが できます。 RDBMS とはそういうものです。

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.1

csvなどのデータをモジュールを使ってAccessに取り込んだりするときに まれに同じ様なことが起きる場合があります。 取り込み直すと順序通り取り込めたりします。 何が原因かはわかりません。

関連するQ&A

  • ACCESSのエクスポートについて

    ACCESSでフォーム上のあるフィールドで右クリックし、 フィルター選択をしてデータをメンテナンスする事が あると思いますが、その選択されたデータをエクセル にエクスポートした時のフィールドの並び順が、何を 基準としているのか、テーブルともフォームのタブ順 でも無く吐き出されます。 単にテーブル=フォームタブストップになっているの で、その順番で吐き出して欲しいのですが。。 どのようにすれば宜しいでしょうか? クエリーもかまさず、フォームは単にテーブルをソース にしています。宜しくお願いします。

  • アクセス エクスポート

    アクセス初心者です。 2つのテーブルのデータを組み合わせて クエリを作成しました。(クエリ1) このクエリ1に抽出条件を付けて さらにデータを絞り込みました。 この絞り込みのデータを、エクセルにエクスポート して作業したいのですが、なぜか、上記の(クエリ1)の データがすべてエクスポートされてしまいます。 アクセスの画面に表示されている、絞り込みデータのみ エクスポートする方法はあるのでしょうか。 お願いします。

  • access2000でインポート・エキスポートする時

    access2000で、csvをtableにインポートする時、 クエリーをcsvにエクスポートする時、データの順番が 一部、入れ替わってしまうのですが、何が原因でしょうか? どなたか、お教えください

  • MSアクセス エクセルへのエクスポートについて

    アクセスの初心者です。いろいろ調べてみたのですがわかりません。どうか教えてください。よろしくお願いします。 アクセスのフォームにボタンを作り、そのボタンを押すとエクセルにエクスポートするように設定しました。しかしデータが全てエクスポートされてしまいます。目指しているのは”開いているフォームのデータのみをエクスポートしたい”のです。 フォーム名:申込書 エクスポートしたいフォームのデータ(クエリ)名:申込書 エクスポート先:エクセルc:¥申込書 です。 主キー:申込ID 仮にフォームで申込IDが「3」を開いていれば、その「3」のデータのみをエクスポートするVBAを教えてください。 現在はここまでの段階で止まっています。↓これにプラスする記述で目指すものができればと思います。 DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "申込書", "c:\申込書.xls", True, "" お手数ですがよろしくお願いします。

  • アクセス のエクスポート

    1. アクセスで、モジュールやデザインを変更したフォームをエクスポートしたいのですが、エクスポート先のテーブルのデータに全く影響はないでしょうか。 2. モジュールも一緒にエクスポートされると思いますが、エクスポート先のテーブルにないフィールドなどを記述していると、エラーが発生することになるでしょうか。 3. 複数(あるいは全て)のフォームを一括してエクスポートする方法はないでしょうか。 4. 特に注意すべき点があれば、合わせて教えてください。   

  • アクセス2003のテーブルとフォームの関係

    私はアクセス初心者です。 簡単なテーブルをまず作成しました (主キー、オートナンバーなどは設定していません) そのテーブルを保存し、次にフォームを作成してデータ入力しました。 そのデータを保存して、次にテーブルを開くとフォームで入力した 順番には入らずに、バラバラにテーブルに入力されています。 アクセスとはこういうものなのでしょうか? それと、これはどういう順番で並んでいるのでしょうか? なにぶん初心者なものでよろしくお願いいたします。

  • Accessのテーブルへのデータインポートについて

    Accessのテーブルへのデータインポートについて Access2002で、A.mdbのTESTテーブルからB.mdbのTESTテーブル(構造は同じ)へテーブルデータをインポートしたいのです。 TESTテーブルの主キーはSEQ(オートナンバー)しかありません。 そのときに、コピー元とコピー先の主キーに重複があった場合、オートナンバーなので自動で再付番しデータが追加して欲しかったのですが、 Accessの機能のエクスポート、インポートでは、コピー先に主キーに重複があったデータは上書きされてしまいます。 テーブルを開き、データをコピー&ペーストしますと、ペーストしたときにオートナンバーで自動で再付番されます。 この方法でもいいのですが、データが数百万件あるので、現実的ではありません。 Accessのインポート・エクスポートで、オートナンバーで主キーを再付番してから、B.mdbのTESTテーブルにデータ追加する方法はないでしょうか? よろしくお願いいたします。

  • ACCESSからエクセルへのエクスポート

    非常に困っています。どなたか教えて下さい。 エクセルのCSVファイルからアクセスのテーブルにデータをインポートして そのテーブルから新しいエクセルファイルにデータをエクスポートします。 (1)エクセルの元ファイル 列1 数値 1桁 (2)アクセスにインポート(インポート定義)        列1 数値型 1桁                 書式で3桁にする。 (3)エクセルにエクスポート(エクスポート定義)  列1 1桁になってしまいます。 ※(2)までは書式に000を入れることで解決しました。   (3)にエクスポートした状態で 列1を3桁にしたいのです                     例えば0→000 ちなみにアクセスは2002を使用しています。 どなたか教えて下さい。本当に困っています。

  • アクセス2010 ""なしエクスポート

    アクセス2010 VB DoCmd.TransferText acExportDelim, , テーブル名,ファイル名.txt テーブルデータをエクスポートするとき、データをダブルコーテーションなしでデータを送る方法ないでしょうか?

  • Access 主キーについて

    Accessでテーブルを作りCSVファイルをテーブルへ読み込みました。その時は主キーを設定しませんでした。1000件あるデータは1000件分読み込めました。 次にテーブルのデータを消して、主キーを2フィールドに設定して、同じように1000件分のデータを読み込んだら950件分しか読み込めませんでした。これは50件は重複するデータがありますよということなのでしょうか?