IDbCommand.ExecuteScalar Methode

Definition

Führt die Abfrage aus und gibt die erste Spalte der ersten Zeile im Resultset zurück, das durch die Abfrage zurückgegeben wird. Zusätzliche Spalten oder Zeilen werden ignoriert.

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

Gibt zurück

Die erste Spalte der ersten Zeile im Resultset.

Beispiele

Im folgenden Beispiel wird eine instance der abgeleiteten Klasse SqlCommanderstellt und anschließend mit ExecuteScalarausgeführt. Im Beispiel wird eine Zeichenfolge übergeben, bei der es sich um eine Transact-SQL-Anweisung handelt, die ein Aggregatergebnis zurückgibt, und eine Zeichenfolge, die zum Herstellen einer Verbindung mit der Datenquelle verwendet werden soll.

public void CreateSqlCommand(
    string queryString, SqlConnection connection)
{
    SqlCommand command = new
        SqlCommand(queryString, connection);
    command.Connection.Open();
    command.ExecuteScalar();
    connection.Close();
}
Public Sub CreateSqlCommand( _
    queryString As String, connection As SqlConnection)

    Dim command As New SqlCommand(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 Datenbank abzurufen. Dies erfordert weniger Code als die Verwendung der ExecuteReader -Methode und führt dann die Vorgänge aus, die erforderlich sind, um den einzelnen Wert mithilfe der von einem IDataReaderzurückgegebenen Daten zu generieren.

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

CommandText = "select count(*) as NumberOfRegions from region";  
Int32 count = (int) ExecuteScalar();  

Wenn die erste Spalte der ersten Zeile im Resultset nicht gefunden wird, wird ein NULL-Verweis (Nothing in Visual Basic) zurückgegeben. Wenn der Wert in der Datenbank ist, gibt nulldie Abfrage zurück DBNull.Value.

Gilt für: