SQL Server内の異なるデータベースの結果を得たい

こんにちは。
どなたか力を貸してください。

SQL Server内の異なるデータベースのテーブルを使用して、
データテーブルを抽出したいのですが、接続設定は1つしか指定できなさそうでうまくいきません。

2つのデータベースに一度に接続できる設定方法などありますでしょうか?

(やりたいこと)
①データベース1のテーブルA
②データベース2のテーブルB

①のデータを元に②のデータから集計結果Cを抽出する。

使用しているアクティビティ
・UiPath.Database.Activities(v1.4.0)

使用しているSTUDIO
・UiPath Studio2021.10.4 Community License

こんにちは
ここを参考に
http://surferonwww.info/BlogEngine/post/2014/05/30/initial-catalog-keyword-in-sqlclient-connection-string.aspx

データベース1とデータベース2が同一インスタンスにある前提で
試してみました。

データベースに接続の
接続文字列="Data Source=サーバー名;User ID=XXX;Password=XXX"
で接続する("Data Source=サーバー名;Initial Catalog=データベース名;User ID=XXX;Password=XXX"の;Initial Catalog=データベース名を省略する)

クエリを実行の
SQLクエリ=
“SELECT [列名1]
FROM [データベース名1].[スキーマ名].[テーブル名A]
UNION ALL
SELECT [列名1]
FROM [データベース名2].[スキーマ名].[テーブル名B]”

で正常な結果を取得できました。

Joinとか、Group byとかは試していませんが、できそうです。

1 Like

Hello @sigo, Try connect to database 1 first and execute the query. Store the table in a variable. Then disconnect from database 1.

Connect to database 2 and do the same as above to achieve the desired output.

Regards,
Robin

1 Like

Hello @AKM_Robinuzzaman
Thank you for your suggestion.
I tried it.
I could not do it.
The data table variable could not be placed in SQL. :pensive:
I learned a lot.
Thank you very much.

こんにちは @ken_infield さん
有益な情報をありがとうございました。
「Initial Catalog=データベース名」を省略できるなんて思いもよりませんでした。
簡単なSQLで試してみたところ、省略しても実行できることが確認できました。
この方法で進められそうです。

大変助かりました。
ありがとうございました。

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.