Freigeben über


Aufrufen von Methoden

Methoden führen bestimmte Aufgaben im Zusammenhang mit dem Objekt aus, z. B. das Ausstellen einer Checkpoint Datenbank oder das Anfordern einer aufgezählten Liste von Anmeldungen für die Instanz von Microsoft SQL Server.

Methoden führen einen Vorgang für ein Objekt aus. Methoden können Parameter verwenden und häufig einen Rückgabewert aufweisen. Der Rückgabewert kann ein einfacher Datentyp, ein komplexes Objekt oder eine Struktur sein, die viele Elemente enthält.

Verwenden Sie die Ausnahmebehandlung, um zu ermitteln, ob die Methode erfolgreich war. Weitere Informationen finden Sie unter Behandeln von SMO-Ausnahmen.

Beispiele

Um ein codebeispiel zu verwenden, das bereitgestellt wird, müssen Sie die Programmierumgebung, die Programmiervorlage und die Programmiersprache auswählen, in der Ihre Anwendung erstellt werden soll. Weitere Informationen finden Sie unter "How to: Create a Visual Basic SMO Project in Visual Studio .NET" oder "How to: Create a Visual C# SMO Project in Visual Studio .NET" in SQL Server Books Online.

Verwenden einer einfachen SMO-Methode in Visual Basic

In diesem Beispiel akzeptiert die Create Methode keine Parameter und hat keinen Rückgabewert.

Verwenden einer einfachen SMO-Methode in Visual C#

In diesem Beispiel akzeptiert die Create Methode keine Parameter und hat keinen Rückgabewert.

{   
//Connect to the local, default instance of SQL Server.   
Server srv;   
srv = new Server();   
//Define a Database object variable by supplying the parent server and the database name arguments in the constructor.   
Database db;   
db = new Database(srv, "Test_SMO_Database");   
//Call the Create method to create the database on the instance of SQL Server.   
db.Create();   

}

Verwenden einer SMO-Methode mit einem Parameter in Visual Basic

Das Table Objekt hat eine Methode namens RebuildIndexes. Diese Methode erfordert einen numerischen Parameter, der die FillFactor.

Dim srv As Server  
srv = New Server  
Dim tb As Table  
tb = srv.Databases("AdventureWorks2012").Tables("Employee", "HumanResources")  
tb.RebuildIndexes(70)  

Verwenden einer SMO-Methode mit einem Parameter in Visual C#

Das Table Objekt hat eine Methode namens RebuildIndexes. Diese Methode erfordert einen numerischen Parameter, der die FillFactor.

{   
Server srv = default(Server);   
srv = new Server();   
Table tb = default(Table);   
tb = srv.Databases("AdventureWorks2012").Tables("Employee", "HumanResources");   
tb.RebuildIndexes(70);   
}   

Verwenden einer Enumerationsmethode, die ein DataTable-Objekt in Visual Basic zurückgibt

In diesem Abschnitt wird beschrieben, wie Sie eine Enumerationsmethode aufrufen und wie die Daten im zurückgegebenen Objekt behandelt DataTable werden.

Die EnumCollations Methode gibt ein DataTable Objekt zurück, das eine weitere Navigation erfordert, um auf alle verfügbaren Sortierinformationen zur Instanz von SQL Server zuzugreifen.

'Connect to the local, default instance of SQL Server.  
Dim srv As Server  
srv = New Server  
'Call the EnumCollations method and return collation information to DataTable variable.  
Dim d As DataTable  
'Select the returned data into an array of DataRow.  
d = srv.EnumCollations  
'Iterate through the rows and display collation details for the instance of SQL Server.  
Dim r As DataRow  
Dim c As DataColumn  
For Each r In d.Rows  
    Console.WriteLine("==")  
    For Each c In r.Table.Columns  
        Console.WriteLine(c.ColumnName + " = " + r(c).ToString)  
    Next  
Next  

Verwenden einer Enumerationsmethode, die ein DataTable-Objekt in Visual C zurückgibt#

In diesem Abschnitt wird beschrieben, wie Sie eine Enumerationsmethode aufrufen und wie die Daten im zurückgegebenen Objekt behandelt DataTable werden.

Die EnumCollations Methode gibt ein Systemobjekt DataTable zurück. Das DataTable Objekt erfordert eine weitere Navigation, um auf alle verfügbaren Sortierungsinformationen zur Instanz von SQL Server zuzugreifen.

//Connect to the local, default instance of SQL Server.   
{   
Server srv = default(Server);   
srv = new Server();   
//Call the EnumCollations method and return collation information to DataTable variable.   
DataTable d = default(DataTable);   
//Select the returned data into an array of DataRow.   
d = srv.EnumCollations;   
//Iterate through the rows and display collation details for the instance of SQL Server.   
DataRow r = default(DataRow);   
DataColumn c = default(DataColumn);   
foreach ( r in d.Rows) {   
  Console.WriteLine("=========");   
  foreach ( c in r.Table.Columns) {   
    Console.WriteLine(c.ColumnName + " = " + r(c).ToString);   
  }   
}   
}   

Erstellen eines Objekts in Visual Basic

Der Konstruktor eines beliebigen Objekts kann mithilfe des New Operators aufgerufen werden. Der Database Objektkonstruktor wird überladen, und die Version des Database im Beispiel verwendeten Objektkonstruktors akzeptiert zwei Parameter: das übergeordnete Server Objekt, zu dem die Datenbank gehört, und eine Zeichenfolge, die den Namen der neuen Datenbank darstellt.

Erstellen eines Objekts in Visual C#

Der Konstruktor eines beliebigen Objekts kann mithilfe des New Operators aufgerufen werden. Der Database Objektkonstruktor wird überladen, und die Version des Database im Beispiel verwendeten Objektkonstruktors akzeptiert zwei Parameter: das übergeordnete Server Objekt, zu dem die Datenbank gehört, und eine Zeichenfolge, die den Namen der neuen Datenbank darstellt.

{   
Server srv;   
srv = new Server();   
Table tb;   
tb = srv.Databases("AdventureWorks2012").Tables("Employee", "HumanResources");   
tb.RebuildIndexes(70);   
//Connect to the local, default instance of SQL Server.   
Server srv;   
srv = new Server();   
//Declare and define a Database object by supplying the parent server and the database name arguments in the constructor.   
Database d;   
d = new Database(srv, "Test_SMO_Database");   
//Create the database on the instance of SQL Server.   
d.Create();   
Console.WriteLine(d.Name);   
}  

Kopieren eines SMO-Objekts in Visual Basic

In diesem Codebeispiel wird die Copy Methode verwendet, um eine Kopie des Server Objekts zu erstellen. Das Server Objekt stellt eine Verbindung mit einer Instanz von SQL Server dar.

Kopieren eines SMO-Objekts in Visual C#

In diesem Codebeispiel wird die Copy Methode verwendet, um eine Kopie des Server Objekts zu erstellen. Das Server Objekt stellt eine Verbindung mit einer Instanz von SQL Server dar.

{   
//Connect to the local, default instance of SQL Server.   
Server srv1;   
srv1 = new Server();   
//Modify the default database and the timeout period for the connection.   
srv1.ConnectionContext.DatabaseName = "AdventureWorks2012";   
srv1.ConnectionContext.ConnectTimeout = 30;   
//Make a second connection using a copy of the ConnectionContext property and verify settings.   
Server srv2;   
srv2 = new Server(srv1.ConnectionContext.Copy);   
Console.WriteLine(srv2.ConnectionContext.ConnectTimeout.ToString);   
}  

Überwachen von Serverprozessen in Visual Basic

Sie können die aktuellen Statustypinformationen zur Instanz von SQL Server über Enumerationsmethoden abrufen. Im Codebeispiel wird die EnumProcesses Methode verwendet, um Informationen zu den aktuellen Prozessen zu ermitteln. Außerdem wird veranschaulicht, wie Sie mit den Spalten und Zeilen im zurückgegebenen DataTable Objekt arbeiten.

Überwachen von Serverprozessen in Visual C#

Sie können die aktuellen Statustypinformationen zur Instanz von SQL Server über Enumerationsmethoden abrufen. Im Codebeispiel wird die EnumProcesses Methode verwendet, um Informationen zu den aktuellen Prozessen zu ermitteln. Außerdem wird veranschaulicht, wie Sie mit den Spalten und Zeilen im zurückgegebenen DataTable Objekt arbeiten.

//Connect to the local, default instance of SQL Server.   
{   
Server srv = default(Server);   
srv = new Server();   
//Call the EnumCollations method and return collation information to DataTable variable.   
DataTable d = default(DataTable);   
//Select the returned data into an array of DataRow.   
d = srv.EnumProcesses;   
//Iterate through the rows and display collation details for the instance of SQL Server.   
DataRow r = default(DataRow);   
DataColumn c = default(DataColumn);   
foreach ( r in d.Rows) {   
  Console.WriteLine("=====");   
  foreach ( c in r.Table.Columns) {   
    Console.WriteLine(c.ColumnName + " = " + r(c).ToString);   
  }   
}   
}   

Siehe auch

Server
ServerConnection