tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトル2つのデータベースの検索
記事No6100
投稿日: 2007/08/20(Mon) 11:03
投稿者まりも
VB.NET 初心者です。

初歩的なところでつまずいています。
アクセスで作った2つのデータベースがあります。
2つのデータベースの共通項目は"UserID"という列です。

データベース1の検索結果に該当する"UserID"で
データベース2を検索したいのですがどのようにすれば良いのでしょうか?

どなたかご教授ください。

VB.NET 2005/ Access 2003 /OS:WinXP

[ツリー表示へ]
タイトルRe: 2つのデータベースの検索
記事No6109
投稿日: 2007/08/20(Mon) 20:25
投稿者魔界の仮面弁士
> データベース1の検索結果に該当する"UserID"で
> データベース2を検索したいのですがどのようにすれば良いのでしょうか?

データベース1に接続した上で、
    SELECT T1.* FROM [C:\folder\データベース2.mdb].[DB2のテーブル] T1
     WHERE EXISTS ( SELECT * FROM [DB1のテーブル] T2
     WHERE T1.UserID = T2.UserID )
という感じにするとか。


あとは必要に応じて EXISTS 句内に、「データベース1の検索条件」を満たすための
AND 条件を追加してやればよいかと。

[ツリー表示へ]
タイトルRe^2: 2つのデータベースの検索
記事No6113
投稿日: 2007/08/21(Tue) 15:57
投稿者まりも
魔界の仮面弁士様

有難うございます。
自分の理解が全く足りないことが分かりました。
本屋に行って参考書を購入してきます。

お手数ですがお教えください。

"SELECT・・・"で始まる文の左辺は 例えば

oleDBAdapter.SelectCommand =

にセットするのでしょうか?

また、書き忘れてしまったのですが、
UserIDは曖昧検索でヒットした結果なので多数存在します。
その場合ANDで繋げていけるのでしょうか?

イメージとしては、T1で該当した行数を丸ごと、T2のデータベースの
フィルターにかけることはできればよいのですが。

おかしな質問になって申しわけございません。

> > データベース1の検索結果に該当する"UserID"で
> > データベース2を検索したいのですがどのようにすれば良いのでしょうか?
>
> データベース1に接続した上で、
>     SELECT T1.* FROM [C:\folder\データベース2.mdb].[DB2のテーブル] T1
>      WHERE EXISTS ( SELECT * FROM [DB1のテーブル] T2
>      WHERE T1.UserID = T2.UserID )
> という感じにするとか。
>
>
> あとは必要に応じて EXISTS 句内に、「データベース1の検索条件」を満たすための
> AND 条件を追加してやればよいかと。

[ツリー表示へ]