Udostępnij za pośrednictwem


OracleCommand.ExecuteScalar Metoda

Definicja

Wykonuje zapytanie i zwraca pierwszą kolumnę pierwszego wiersza w zestawie wyników zwróconym przez zapytanie jako typ danych platformy .NET. Dodatkowe kolumny lub wiersze są ignorowane.

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

Zwraca

Pierwsza kolumna pierwszego wiersza w zestawie wyników jako typ danych platformy .NET lub odwołanie o wartości null, jeśli zestaw wyników jest pusty lub wynik to REF CURSOR.

Implementuje

Przykłady

Poniższy przykład tworzy obiekt OracleCommand , a następnie wykonuje go przy użyciu polecenia ExecuteScalar. Przykład jest przekazywany ciąg, który jest instrukcją SQL zwracającą zagregowany wynik, oraz ciąg używany do nawiązywania połączenia z bazą danych.

public void CreateOracleCommand(string myScalarQuery, OracleConnection connection)
 {
    OracleCommand command = new OracleCommand(myScalarQuery, connection);
    command.Connection.Open();
    command.ExecuteScalar();
    connection.Close();
 }
Public Sub CreateOracleCommand(myScalarQuery As String, connection As OracleConnection)
    Dim command As New OracleCommand(myScalarQuery, connection)
    command.Connection.Open()
    command.ExecuteScalar()
    connection.Close()
End Sub

Uwagi

ExecuteScalar Użyj metody , aby pobrać pojedynczą wartość (na przykład zagregowaną wartość) z bazy danych. Wymaga to mniej kodu niż użycie ExecuteReader metody , a następnie wykonanie operacji niezbędnych do wygenerowania pojedynczej wartości na podstawie danych zwracanych przez metodę OracleDataReader.

Typowe ExecuteScalar zapytanie można sformatować tak, jak w poniższym przykładzie w języku C#:

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

Dotyczy

Zobacz też