Creating Important Aspects of Notification Services - Enumerating a Notification Services Application Database
(Page 7 of 7 )
This example enumerates the filegroup, database files, and logfiles for the HelloWorldApp Notification Services application created in Example 18-1:
using System;
using Microsoft.SqlServer.Management.Smo;
using Microsoft.SqlServer.Management.Nmo;
class Program
{
static void Main(string[] args)
{
Server server = new Server("(local)");
NotificationServices ns = server.NotificationServices;
Instance ins = ns.Instances["StockWatch"];
Application a = ins.Applications["StockWatchApp"];
ApplicationDatabaseOptions ado = a.ApplicationDatabaseOptions;
Console.WriteLine("APPLICATION DATABASE OPTIONS:");
Console.WriteLine(" Name: " + ado.Name);
Console.WriteLine(" DefaultFileGroup: " + ado.DefaultFileGroup);
Console.WriteLine(Environment.NewLine + "FILE GROUPS:");
foreach (ApplicationDatabaseFileGroup adfg in
ado.ApplicationDatabaseFileGroups)
{
Console.WriteLine(" Name: " + adfg.Name);
Console.WriteLine(Environment.NewLine + "DATABASE FILES");
foreach (ApplicationDatabaseFile adf in adfg.ApplicationDatabaseFiles)
Console.WriteLine(" Name: " + adf.Name);
}
Console.WriteLine(Environment.NewLine + "LOG FILES:");
foreach (ApplicationDatabaseLogFile adlf in
ado.ApplicationDatabaseLogFiles)
Console.WriteLine(" Name: " + adlf.Name);
Console.WriteLine(Environment.NewLine + "Press any key to continue.");
Console.ReadKey();
}
}
Results are shown in Figure 18-10.

Figure 18-10. Results for enumerating a Notification Services application database example
Each Notification Services application has one database that can optionally contain one or more filegroups. If you define filegroups, one must be calledPRIMARY. Use SQL Server Management Studio if you need to alter the application database after creating the instance.
The NMO classes for managing the application database, filegroups, files, and logfiles are described in Table 18-14.
Table 18-14. NMO classes for managing application databases
| Class | Database |
| ApplicationDatabaseFile | Represents an application database file. |
| ApplicationDatabaseFileCollection | Represents a collection of application databases as ApplicationDatabaseFileobjects. The ApplicationDatabaseFilesproperty of the ApplicationDatabaseFileGroupclass returns the application databases in the application database filegroup. |
| ApplicationDatabaseFileGroup | Represents an application database filegroup. |
| ApplicationDatabaseFileGroupCollection | Represents a collection of application database filegroups as ApplicationDatabaseFileGroupobjects. The ApplicationDatabaseFileGroupsproperty of the ApplicationDatabaseOptionsclass returns the application database filegroups in the application. |
| ApplicationDatabaseLogFile | Represents an application database logfile. |
| ApplicationDatabaseLogFileCollection | Represents a collection of application database logfiles as ApplicationDatabaseLogFileobjects. The ApplicationDatabaseLogFilesproperty of the ApplicationDatabaseOptionsclass returns the application database logfiles in the application. |
| ApplicationDatabaseOptions | Represents database options for the application database. The ApplicationDatabaseOptionsproperty of the Applicationclass returns the database properties for the application. |
| DISCLAIMER: The content provided in this article is not warranted or guaranteed by Developer Shed, Inc. The content provided is intended for entertainment and/or educational purposes in order to introduce to the reader key ideas, concepts, and/or product reviews. As such it is incumbent upon the reader to employ real-world tactics for security and implementation of best practices. We are not liable for any negative consequences that may result from implementing any information covered in our articles or tutorials. If this is a hardware review, it is not recommended to open and/or modify your hardware. |
|
This article is excerpted from chapter 18 of Programming SQL Server 2005, written by Bill Hamilton (O'Reilly, 2006; ISBN: 0596004796). Check it out today at your favorite bookstore. Buy this book now.
|
|