- 締切済み
アクセス:数値フィールドがオーバーフローしました。(Error 3349)
Access2003/SP2にて、選択クエリ実行時に発生します。それも必ず毎回ではなく、あったりなかったりです。 元テーブルはExelからのリンクです。大体4000~5000行のデータとして、列は12あります。 エラーボックスの「ヘルプ」を開くと 「Btrieve フィールドのデータが大きすぎるため、アプリケーションで表示できません。」 とあって、それをグーグルで検索したんですが解決策を示す情報がないのです。 さらにヘルプ情報を詳細で表示すると長ったらしい文章なんですが、ようは何処かのデータベース(WindowsSharePointとか)から拾ったデータの場合におきる、様なことでした。 ですが元テーブルのリンクはExelなので、当てはまらないのです(と思います)。 最適化もしてみましたが意味がないみたいです。テーブルがリンクのためプロパティ変更も出来ないし・・・ クエリを一つのAccessデータベースで作ったり削除したり、テーブルもとっかえひっかえしたのがいけないのでしょうか。 すごく困ってます。 なおAccessデータベースは他の人とは共有していません。デスクトップ上にあります。 分かりそうな人が周囲に居ないので、ぜひお知恵をお貸しください。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- Tasuke22
- ベストアンサー率33% (1799/5383)
>「Btrieve フィールドのデータが大きすぎるため、アプリケーションで表示できません。」 この言葉の通りですね。 Btrieveフィールドが何もので、どのくらいから どのくらいまでの値を期待しているのでしょうか? クエリを発行させているプログラムが、現在ある ある値が大き過ぎて表示できない、うーんメッセ ージ通りですが。 データベースのBtrieveフィールドの属性が、 アプリと不一致とか、そもそもアプリがサポート していない大きな値とか。そういった方向性の 問題ではないでしょうか。 今まで出なかったのは、実際にそんな大きな値が 入っていなかったためとかでしょう、きっと。
補足
済みません。メッセージ内容自体が理解できないのです。 私はアクセスを最近よく使い始めただけで、とくにエクセルデータが5000件にもなると動作も(色々な面で)悪く、集計も取りにくい状況があったのでアクセスクエリでの作業に移行させたのです。 エクセルデータをベースにして抽出クエリにし、抽出クエリをクロス集計クエリに使っているだけ・・・なのですが。 >今まで出なかったのは、実際にそんな大きな値が入っていなかったためとか 同じデータを取り込んで作成した同じクエリについて、発生したりしなかったりです。つまり入っているものは全く同じということです。 エクセルのデータは普通に会社で使うようなもの、例えて言うなら「商品名・ロット・受注日・発注日・価格・発送先住所・担当者・クレームコメント」みたいなものです(実際は違いますが企業情報なので控えます)。 バグなのかな?とも思ってしまいます。