- ベストアンサー
フィールドのデータ型で検索結果に差が出る
- クエリのパラメータ検索「複数キー入力」において、フィールドのデータ型の違いで検索ができない状態になる問題が発生しています。
- 特に、「メモ形」のフィールドを持つデータベースでは検索ができない現象が発生しています。
- データベースの作り方に問題がある可能性もありますが、情報での検索ができるようにすることで検索効率が向上し、データベースの活用がより有効になると考えています。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
>フィールドのデータ型の違いで、検索ができない状態になる。 フィールドの「データ形」で「メモ形」だけ検索できない現象がでます。 「メモ形」を持つデータベースは同じ結果「検索できない」になりました。 勿論、私のデータベースの作り方に問題があるかもしれませんが。 ★「フィールドのデータ型」はテーブルのプロパティーです。 同種の「メモ形」のあるファイル同様の不都合の様で今回の提言をしました。 --------------------------------------------------------------- >テキストボックス検索とメモ型検索を別々の方法にて、 設定内容を変えて使おうかなと思っています。 「お恥ずかしい話ですが、以前(数年前)、 大手の通販ネットの個人出店業者から2010を購入 (MSは販売終了)の経験があります。 Office○○○○PLUS名のディスクが送られてきて、 結局のところ電話インストールになりMSから断られました それ以降、2010や2013の購入する気も失せてしまっています。 そんな事情で確認する術が有りません。どうしても駄目なら、 メモ形フィールドは「Like "*" & [ 情報検索 ] & "*"」で 対処しようかと考えて・・・います。 ★テーブルの問題をクエリで解消することは無理です。 Access2010は既に「短いテキスト型」と「長いテキスト型」に なっています。 Accessのアップデートも必要ありませんテーブルのフィールドの プロパティで確認するだけです。 不都合は川上で手を打つのが効率的です 添付は、左辺の商品マスタを右クリックから開き、 商品詳細メモの右端をクリックでデータ型のリストです 「メモ形」がリストにありますか、数回のマウス操作です。 是非お試しください 尚、Office365はレンタル制になり導入し易くなりました。 (1.3万円/年で5台のPCで使用可能) 私もMicrosoftにはサポート切れ、直近では日本の元号変更の対応の遅れ等 色々気に入らぬ事もありますが 使い易いソフトと思います。最近ではフォーム、レポート設計で 表形式、単票形式が追加され、前後左右のボック間で手を繋いだ一つの フィールドの大きさを変えると他のボックスも移動するため ボックスの重なりが無くなった。 過去の蟠りを捨てましょう
その他の回答 (4)
- kkkkkm
- ベストアンサー率66% (1742/2617)
> 対処の方法は無いのでしょうか 原因がデータが入ってない等なのでしょうか? 原因ではないのに対処しても徒労に終わると思いますが、私なら検索値がない場合には検索をしない(クエリを実行させない)という処理をします。 アクセスの検索機能でも検索する文字列がない場合には検索ができないと思いますよ。 [内容(一文字可)]の規定値に*を入れておけば開いたときに検索値がないという事はなくすべて検索という結果になりますが、すべて検索しても意味はないと思います。また、開いた後に検索値を削除すれば結果はエラーにります。
お礼
ありがとうございます。「原因ではないのに対処しても徒労に終わる」と実感しました。追加でデータベスを作成する際の貴重な情報として活かしたいと思います。ありがとうございました。
- chayamati
- ベストアンサー率41% (260/624)
こんにちは >フィールドの「データ形」で「メモ形」だけ検索できない現象がでます。 ★ACCESSのバージョンを更新しましたか? テーブルのデザインビューで「メモ形」を「長いデータ形」に 変更を試して下さい 以前はフィールドのデータ型に「テキスト型」と「メモ型」でしたが Access2010では「長いテキスト型」と「短いテキスト型」です
お礼
ありがとうございます。残念ながら試す手段を持っていませんので、テキストボックス検索とメモ型検索を別々の方法にて、設定内容を変えて使おうかなと思っています。「お恥ずかしい話ですが、以前(数年前)、大手の通販ネットの個人出店業者から2010を4万円(この価格なら大丈夫・・・かと)で購入(MSは販売終了)の経験があります。しかし、Office○○○○PLUS名のディスクが送られてきて、結局のところ電話インストールになりMSから断られました「ライセンス数以上に使用されていたとのこと・・・大手通販ネット会社の対応で実害は有りませんでしたが・・。」。それ以降、2010や2013の購入する気も失せてしまっています。余計なことを申しましたが、そんな事情で確認する術が有りません。どうしても駄目なら、メモ形フィールドは「Like "*" & [ 情報検索 ] & "*"」で対処しようかと考えて・・・います。取り急ぎご報告させて頂きます。ありがとうございました。
- m3_maki
- ベストアンサー率64% (296/460)
FieldType が 10 になっているところを 12 にしたらどうなりますか? 参考 BuildCriteria メソッド (Access) https://docs.microsoft.com/ja-jp/office/vba/api/access.application.buildcriteria DataTypeEnum 列挙 (DAO) https://docs.microsoft.com/ja-jp/office/client-developer/access/desktop-database-reference/datatypeenum-enumeration-dao
補足
アドバイスありがとうございます。10から12へ設定しましたが、やはり検索対象がメモ型フィールドだけ「式が正しく入力されていないか、複雑すぎるため評価できません。たとえば、数式に複雑な要素が多すぎます。変数に式の一部を割り当て、式を簡単にしてください。」と返します。尚、データには日付や数字が混在しているものもあります。開くフォームには「=Date()」のテキスト窓がもありますが、こうしたことと関係があるのでしょうか。
- kkkkkm
- ベストアンサー率66% (1742/2617)
[内容(一文字可)] にデータが入っていない場合や、データを新規に入力した後に他のコントロールにフォーカスが移動していない場合そのようなエラーになります。 > 「式1: 」が勝手に付いてしまいますが 仕様です。フィールド名が必要なのでフィールド名が記載されていない場合アクセスが式1とつけます。式1となるところにフィールド名を記載すればその名前で表示されます。
補足
ありがとうございます。アドバイスの「データが入っていない場合や、データを新規に入力した後に他のコントロールにフォーカスが移動していない場合そのようなエラーになります。」ですが、対処の方法は無いのでしょうか。無知な質問かと思いますが・・・・そうでしたらお許しください。
お礼
ありがとうございました。親身に対応いただきまして感謝です。バージョン変更ですが、年金生活者でもあり、じっくり考えてみたいと思います。貴重な経験として活かしていきたいと思います。本当にありがとうございました。