Bagikan melalui


SqlCommand.ExecuteScalar Metode

Definisi

Menjalankan kueri, dan mengembalikan kolom pertama dari baris pertama dalam tataan hasil yang dikembalikan oleh kueri. Kolom atau baris tambahan diabaikan.

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

Mengembalikan

Kolom pertama baris pertama dalam tataan hasil, atau referensi null ( Nothing di Visual Basic) jika tataan hasil kosong. Mengembalikan maksimal 2033 karakter.

Pengecualian

Selain SqlDbTypeBiner atau VarBinary digunakan ketika Value diatur ke Stream . Untuk informasi selengkapnya tentang streaming, lihat Dukungan Streaming SqlClient.

-atau-

Selain SqlDbTypeChar, NChar, NVarChar, VarChar, atau Xml digunakan saat Value diatur ke TextReader .

-atau-

Selain SqlDbTypeXml digunakan ketika Value diatur ke XmlReader .

Terjadi pengecualian saat menjalankan perintah terhadap baris terkunci. Pengecualian ini tidak dihasilkan saat Anda menggunakan Microsoft .NET Framework versi 1.0.

-atau-

Waktu habis terjadi selama operasi streaming. Untuk informasi selengkapnya tentang streaming, lihat Dukungan Streaming SqlClient.

Ditutup SqlConnection atau dihilangkan selama operasi streaming. Untuk informasi selengkapnya tentang streaming, lihat Dukungan Streaming SqlClient.

Terjadi kesalahan dalam Stream objek , XmlReader atau TextReader selama operasi streaming. Untuk informasi selengkapnya tentang streaming, lihat Dukungan Streaming SqlClient.

Objek Stream , XmlReader atau TextReader ditutup selama operasi streaming. Untuk informasi selengkapnya tentang streaming, lihat Dukungan Streaming SqlClient.

Contoh

Contoh berikut membuat SqlCommand lalu menjalankannya menggunakan ExecuteScalar. Contohnya diteruskan string yang mewakili nilai baru yang akan disisipkan ke dalam tabel, dan string yang akan digunakan untuk menyambungkan ke sumber data. Fungsi mengembalikan nilai kolom Identitas baru jika baris baru disisipkan, 0 pada kegagalan.

using System;
using System.Data;
using Microsoft.Data.SqlClient;

public class Sample
{

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

Keterangan

ExecuteScalar Gunakan metode untuk mengambil satu nilai (misalnya, nilai agregat) dari database. Ini membutuhkan lebih sedikit kode daripada menggunakan ExecuteReader metode , lalu melakukan operasi yang Anda butuhkan untuk menghasilkan nilai tunggal menggunakan data yang SqlDataReaderdikembalikan oleh .

Kueri umum ExecuteScalar dapat diformat seperti dalam contoh C# berikut:

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

Berlaku untuk