SQL 文中に参照する他のデータベース名を記入せずに 他のデータベースを参照したい - SQL Server

SQL 文中に参照する他のデータベース名を記入せずに 他のデータベースを参照する手順を紹介します。

概要

他のデータベースを参照する場合は、SQLの文中にデータベース名を入力すれば参照できます。

記述例

 select * from [iPentecSandBox].[dbo].Products

上記の方法でデータベースの参照はできますが、参照するデータベースが動的に変化する場合、SQL文中に参照先のデータベース名を記入したくない場合があります。参照先のデータベース名を入れずに他のデータベースを参照する方法を紹介します。

対処法

対処法1:ビューを作成する

データベース間のビューを作成することで、参照するデータベース名をSQL文中に入れないようにできます。

対処法2:シノニムを利用する

シノニムを利用することで、データベース名を指定せずに、他のデータベースのテーブルを参照名で参照できます。シノニムの作成手順についてはこちらの記事を参照してください。

対処法3:アプリ側で動的にSQL文を発行する

SQL文中にデータベース名が入ってしましますが、アプリケーション側でSQL文を動的に生成する方法もあります。
著者
iPentec.com の代表。ハードウェア、サーバー投資、管理などを担当。
Office 365やデータベースの記事なども担当。
最終更新日: 2018-03-20
作成日: 2016-11-02
iPentec all rights reserverd.