次の方法で共有


データベース表現 (表形式)

表形式モードでは、データベースは表形式モデル内のすべてのオブジェクトのコンテナーです。

データベース表現

データベースは、表形式モデルを形成するすべてのオブジェクトが存在する場所です。 データベースに含まれる開発者は、接続、テーブル、ロールなどのオブジェクトを検索します。

AMO のデータベース

AMO を使用して表形式モデル データベースを管理する場合、AMO の Database オブジェクトは、表形式モデルのデータベース論理オブジェクトと一致します。

データベース オブジェクトにアクセスするには、AMO で、ユーザーがサーバー オブジェクトにアクセスして接続する必要があります。

ADOMD.Net 内のデータベース

ADOMD を使用して表形式モデル データベースを参照および照会する場合、特定のデータベースへの接続は、 AdomdConnection オブジェクトを介して取得されます。

次のコード スニペットを使用して、特定のデータベースに直接接続できます。

using ADOMD = Microsoft.AnalysisServices.AdomdClient;  
...  
   ADOMD.AdomdConnection currrentCnx = new ADOMD.AdomdConnection("Data Source=<<server\instance>>;Catalog=<<database>>");  
   currrentCnx.Open();  
...  
  

また、既存の接続オブジェクト (閉じていない) を介して、次のコード スニペットに示すように、現在のデータベースを別のデータベースに変更できます。

currentCnx.ChangeDatabase("myOtherDatabase");  
  

AMO のデータベース

AMO を使用してデータベース オブジェクトを管理する場合は、 Server オブジェクトから始めます。 次に、データベース コレクション内のデータベースを検索するか、コレクションにデータベースを追加して新しいデータベースを作成します。

次のコード スニペットは、データベースが存在しないことを確認した後に、サーバーに接続して空のデータベースを作成する手順を示しています。

  
AMO.Server CurrentServer = new AMO.Server();  
try  
{  
    CurrentServer.Connect(currentServerName);  
}  
catch (Exception cnxException)  
{  
    MessageBox.Show(string.Format("Error while trying to connect to server: [{0}]\nError message: {1}", currentServerName, cnxException.Message), "AMO to Tabular message", MessageBoxButtons.OK, MessageBoxIcon.Error);  
    return;  
}  
newDatabaseName = DatabaseName.Text;  
if (CurrentServer.Databases.Contains(newDatabaseName))  
{  
    return;  
}  
try  
{  
    AMO.Database newDatabase = CurrentServer.Databases.Add(newDatabaseName);  
  
    CurrentServer.Update();  
}  
catch (Exception createDBxc)  
{  
    MessageBox.Show(String.Format("Database [{0}] couldn't be created.\n{1}", newDatabaseName, createDBxc.Message), "AMO to Tabular message", MessageBoxButtons.OK, MessageBoxIcon.Error);  
    newDatabaseAvailable = false;  
}  
  

AMO を使用してデータベース表現を作成および操作する方法の実用的な理解については、表形式 AMO 2012 サンプルのソース コードを参照してください。具体的には、次のソース ファイルをチェックインします: Database.cs。 サンプル コードは、ここで説明する論理的な概念のサポートとしてのみ提供されており、運用環境では使用しないでください。