Представление базы данных (табличное)
В табличном режиме база данных является контейнером для всех объектов табличной модели.
Представление базы данных
База данных — это место, где размещаются все объекты, образующие табличную модель. В базе данных разработчик находит такие объекты, как соединения, таблицы, роли и т. д.
База данных в объектах AMO
Если для управления табличным шаблоном базы данных табличной модели используются объекты AMO, то объект Database из AMO соответствует логическому объекту базы данных в табличной модели по схеме «один к одному».
Примечание
Чтобы получить доступ к объекту базы данных, пользователь объектов 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. Образец кода приведен только для иллюстрации описываемых здесь логических концепций и не должен использоваться в рабочей среде.