こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

オートナンバー型を抽出条件にするとき

いつもお世話になります。
VB.NET2003+Access2000環境です。

あるテーブルにはオートナンバー型を使って新規発生データの管理番号を振っていますが、別のテーブルでその番号を見て手入力しているフィールドがあります。

SQLの抽出条件でこのオートナンバーと手入力したデータと一致したデータを抽出しようとやっているのですがうまくいきません。

オートナンバーのデータを参照して入力するほうのフィールドを数値型にしてもテキストにしてもいずれも「型が一致しない」というエラーが起こります。

こういう場合はどういう風な処理をするのが一般的なのでしょうか?
よろしくお願いいたします。

投稿日時 - 2006-12-19 10:25:20

QNo.2611889

すぐに回答ほしいです

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

Accessでクエリを作成して、そのSQL文をコピーして使ってもダメですか?
あるいは、そのクエリを直接使うとか?

投稿日時 - 2006-12-19 12:58:26

お礼

アクセスでいろいろ試行錯誤して、結果ギブアップ。
ロジックを変えてなんとか目的を自己解決しました。

ありがとうございました。

投稿日時 - 2006-12-20 13:51:44

ANo.2

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

一度、フィールドの値をLong Integerの変数に代入してからSQL文を組み立てたらどうでしょうか?
Query="SELECT * FROM hogehoge WHERE auto_id = " + cstr(id_var)

投稿日時 - 2006-12-19 10:43:10

補足

早速ありがとうございます。
実際にはクエリビルダを使って

 Select Aテーブル.Aデータ,Aテーブル.Bデータ・・・・
 From Aテーブル INNER JOIN Bテーブル ON Aテーブル.オートナンバーデータ = Bテーブル.数値(テキスト)型データ・・・・

という感じにしたいのですが。

INNER JOIN文で「Aテーブルのデータ = Bテーブルのデータ」を一致させるにはどう記述したらということなんです。


>一度、フィールドの値をLong Integerの変数に代入してからSQL文を組み立てたら

具体的にはどうすれば(どの位置にどう書けば)いいのでしょうか。
引き続きよろしくお願いいたします。

投稿日時 - 2006-12-19 11:01:24

あなたにオススメの質問