Sdílet prostřednictvím


IDbCommand.ExecuteScalar Metoda

Definice

Spustí dotaz a vrátí první sloupec prvního řádku v sadě výsledků vrácené dotazem. Nadbytečné sloupce nebo řádky se ignorují.

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

Návraty

První sloupec prvního řádku v sadě výsledků

Příklady

Následující příklad vytvoří instanci odvozené třídy SqlCommanda pak ji spustí pomocí ExecuteScalar. Příklad je předán řetězec, který je transact-SQL příkaz, který vrací agregovaný výsledek, a řetězec, který se má použít pro připojení ke zdroji dat.

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

Poznámky

Použijte metodu ExecuteScalar k načtení jedné hodnoty (například agregační hodnoty) z databáze. To vyžaduje méně kódu než použití ExecuteReader metody a provedení operací potřebných k vygenerování jedné hodnoty pomocí dat vrácených objektem IDataReader.

Typický ExecuteScalar dotaz je možné naformátovat jako v následujícím příkladu jazyka C#:

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

Pokud první sloupec prvního řádku v sadě výsledků není nalezen, vrátí se odkaz null (Nothing v jazyce Visual Basic). Pokud je nullhodnota v databázi , vrátí DBNull.Valuedotaz .

Platí pro