SQL Anywhere サーバでは、複数のローカル・データベースを同時に稼働できます。他のローカル SQL Anywhere データベース内のテーブルをリモート・テーブルとして定義することによって、データベース間のジョインを実行できます。
複数のデータベースの指定の詳細については、CREATE SERVER 文の USING パラメータを参照してください。
データベース db1 を使用しているときに、データベース db2 内のテーブルのデータにアクセスするとします。この場合は、データベース db2 のテーブルを示すプロキシ・テーブル定義を設定します。RemoteSA という名前の SQL Anywhere サーバ上で、db1、db2、db3 の 3 つのデータベースが使用可能だとします。
ODBC を使用している場合、アクセスするデータベースのそれぞれに ODBC データ・ソース名を作成します。
使用しているデータベースのいずれかに接続します。たとえば db1 に接続します。
アクセスするその他のローカル・データベースのそれぞれに、CREATE SERVER 文を実行します。これによって、SQL Anywhere サーバへの「ループバック」接続が設定されます。
CREATE SERVER remote_db2 CLASS 'saodbc' USING 'RemoteSA_db2'; CREATE SERVER remote_db3 CLASS 'saodbc' USING 'RemoteSA_db3'; |
JDBC を使用する場合は次のようになります。
CREATE SERVER remote_db2 CLASS 'sajdbc' USING 'mypc1:2638/db2'; CREATE SERVER remote_db3 CLASS 'sajdbc' USING 'mypc1:2638/db3'; |
アクセスする他のデータベースにあるテーブルに CREATE EXISTING TABLE 文を実行して、プロキシ・テーブルの定義を作成します。
CREATE EXISTING TABLE Employees AT 'remote_db2...Employees'; |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |