Server.Events Property
Gets the server events associated with the instance of Microsoft SQL Server.
Namespace: Microsoft.SqlServer.Management.Smo
Assembly: Microsoft.SqlServer.Smo (in microsoft.sqlserver.smo.dll)
Syntax
'Declaration
Public ReadOnly Property Events As ServerEvents
public ServerEvents Events { get; }
public:
property ServerEvents^ Events {
ServerEvents^ get ();
}
/** @property */
public ServerEvents get_Events ()
public function get Events () : ServerEvents
Property Value
A ServerEvents object that represents the server events.
Remarks
Updated text:
The Events property points to a ServerEvents object that controls the subscription to server events for the application to handle. Use the ServerEventSet object to create a variable that contains a specified set of server events, such as the CreateDatabase event. The server can then subscribe to the events by calling one of the SubscribeToEvents overloads. The StartEvents method then starts the server that is receiving events.
This namespace, class, or member is supported only in version 2.0 of the Microsoft .NET Framework.
Example
'Create an event handler subroutine that runs when a table is created.
Private Sub MyCreateEventHandler(ByVal sender As Object, ByVal e As ServerEventArgs)
Console.WriteLine("A table has just been added to the AdventureWorks database.")
End Sub
'Create an event handler subroutine that runs when a table is deleted.
Private Sub MyDropEventHandler(ByVal sender As Object, ByVal e As ServerEventArgs)
Console.WriteLine("A table has just been dropped from the AdventureWorks database.")
End Sub
Sub Main()
'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Reference the AdventureWorks database.
Dim db As Database
db = srv.Databases("AdventureWorks")
'Create a database event set that contains the CreateTable event only.
Dim databaseCreateEventSet As New DatabaseEventSet
databaseCreateEventSet.CreateTable = True
'Create a server event handler and set it to the first event handler subroutine.
Dim serverCreateEventHandler As ServerEventHandler
serverCreateEventHandler = New ServerEventHandler(AddressOf MyCreateEventHandler)
'Subscribe to the first server event handler when a CreateTable event occurs.
db.Events.SubscribeToEvents(databaseCreateEventSet, serverCreateEventHandler)
'Create a database event set that contains the DropTable event only.
Dim databaseDropEventSet As New DatabaseEventSet
databaseDropEventSet.DropTable = True
'Create a server event handler and set it to the second event handler subroutine.
Dim serverDropEventHandler As ServerEventHandler
serverDropEventHandler = New ServerEventHandler(AddressOf MyDropEventHandler)
'Subscribe to the second server event handler when a DropTable event occurs.
db.Events.SubscribeToEvents(databaseDropEventSet, serverDropEventHandler)
'Start event handling.
db.Events.StartEvents()
'Create a table on the database.
Dim tb As Table
tb = New Table(db, "Test_Table")
Dim mycol1 As Column
mycol1 = New Column(tb, "Name", DataType.NChar(50))
mycol1.Collation = "Latin1_General_CI_AS"
mycol1.Nullable = True
tb.Columns.Add(mycol1)
tb.Create()
'Remove the table.
tb.Drop()
'Wait until the events have occured.
Dim x As Integer
Dim y As Integer
For x = 1 To 1000000000
y = x * 2
Next
'Stop event handling.
db.Events.StopEvents()
End Sub
Thread Safety
Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Platforms
Development Platforms
For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.
Target Platforms
For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.
See Also
Reference
Server Class
Server Members
Microsoft.SqlServer.Management.Smo Namespace
Other Resources
How to: Register Event Handlers and Subscribe to Event Handling in Visual Basic .NET
Handling SMO Events
Managing Servers
Change History
Release |
History |
New content:
|