dポイントプレゼントキャンペーン実施中!

テキストボックスに255文字以上入力された値をクエリを用いてデータベースに書き込もうとしているのですが、「引数が無効です」というエラーが出てしまい、登録できません。
原因はなんなのでしょうか?また回避策は有るのでしょうか?どなたか教えてください!

A 回答 (5件)

その書き込もうとしているフィールドがテキスト型なのでしょう。


テキスト型の上限は255文字です。97以前は確か半角で255? 2000以降だと文字数で255文字。

回避させるにはフィールドをメモ型にさせましょう。
2000ならユーザーインターフェイスからデータを入力する場合は 65,535 文字、プログラムから直接入力させる場合は 1 GBまで渡せるようです。

このあたりの制限は仕様ですのでどうしようもありません。根本的に解決するにはアクセスのような簡易データベースではなく、本物のデータベースを使うw
だましだまし回避させるにはフィールドを複数に分けるなどでしょう。

この回答への補足

返答ありがとうございます。
でも、申し訳ございません。フィールドはメモ型なんです。。。
ちなみにアクセスのバージョンは2000です。

補足日時:2004/04/07 19:49
    • good
    • 0

追加です。



> 回避策は

[ACC2002] レポートを Excel に出力するとメモ型フィールドの文字が切り詰められる
http://support.microsoft.com/default.aspx?scid=k …

テキスト型を使うしかないのかもしれないです。

参考URL:http://support.microsoft.com/default.aspx?scid=k …
    • good
    • 0

> クエリを用いてデータベースに書き込もうとしているのですが、


> 「引数が無効です」というエラーが出てしまい、登録できません。

追加クエリ Or 更新クエリを使ってということでしょうか?
メモ型の場合、いろいろ制約があるみたいなので、そのひとつかもしれないですね。

ACC: フォーマットされたメモは、255文字でのデータを切り捨てます。
http://support.microsoft.com/default.aspx?scid=k …

こんなのもあるみたいですし。
    • good
    • 0

>クエリを用いてデータベースに書き込もう


この部分具体的にどのようにしてますか?

マクロかモジュールでしょうか?
マクロの「RunSQL/SQLの実行」は256バイト
モジュールの「Docmd.Runsql」は32768バイト
の制限があります。
これにひっかかっていませんか?
    • good
    • 0

mdbを最適化しても直りませんか?

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!