Freigeben über


OleDbCommand.ExecuteScalar Methode

Definition

Führt die Abfrage aus und gibt die erste Spalte der ersten Zeile in dem von der Abfrage zurückgegebenen Resultset zurück. Weitere Spalten oder Zeilen werden ignoriert.

public:
 override System::Object ^ ExecuteScalar();
public:
 virtual System::Object ^ ExecuteScalar();
public override object? ExecuteScalar ();
public object ExecuteScalar ();
public override object ExecuteScalar ();
override this.ExecuteScalar : unit -> obj
abstract member ExecuteScalar : unit -> obj
override this.ExecuteScalar : unit -> obj
Public Overrides Function ExecuteScalar () As Object
Public Function ExecuteScalar () As Object

Gibt zurück

Die erste Spalte der ersten Zeile im Resultset oder ein NULL-Verweis, wenn das Resultset leer ist.

Implementiert

Ausnahmen

Ein Befehl in einem Transaktionskontext, der von dem Kontext abweicht, in dem die Verbindung ursprünglich eingetragen wurde, kann nicht ausführt werden.

Beispiele

Im folgenden Beispiel wird ein OleDbCommand erstellt und dann mit ExecuteScalarausgeführt. Das Beispiel wird eine Zeichenfolge übergeben, bei der es sich um eine SQL-Anweisung handelt, die ein Aggregatergebnis zurückgibt, und eine Zeichenfolge, die zum Herstellen einer Verbindung mit der Datenquelle verwendet werden soll.

public void CreateMyOleDbCommand(string queryString,
    OleDbConnection connection)
{
    OleDbCommand command = new OleDbCommand(queryString, connection);
    command.Connection.Open();
    command.ExecuteScalar();
    connection.Close();
}
Public Sub CreateMyOleDbCommand(queryString As String, _
    connection As OleDbConnection)
    Dim command As New OleDbCommand(queryString, connection)
    command.Connection.Open()
    command.ExecuteScalar()
    connection.Close()
End Sub

Hinweise

Verwenden Sie die ExecuteScalar -Methode, um einen einzelnen Wert, z. B. einen Aggregatwert, aus einer Datenquelle abzurufen. Dies erfordert weniger Code als die Verwendung der ExecuteReader -Methode und dann das Ausführen der Vorgänge, die erforderlich sind, um den einzelnen Wert mithilfe der von einem OleDbDataReaderzurückgegebenen Daten zu generieren.

Eine typische ExecuteScalar Abfrage kann wie im folgenden C#-Beispiel formatiert werden:

CommandText = "SELECT COUNT(*) FROM region";  
Int32 count = (Int32) ExecuteScalar();  

Gilt für:

Weitere Informationen