SqlCommand.ExecuteNonQuery Yöntem

Tanım

Bağlantıda bir Transact-SQL deyimi yürütür ve etkilenen satır sayısını döndürür.

public:
 virtual int ExecuteNonQuery();
public:
 override int ExecuteNonQuery();
public int ExecuteNonQuery();
public override int ExecuteNonQuery();
abstract member ExecuteNonQuery : unit -> int
override this.ExecuteNonQuery : unit -> int
override this.ExecuteNonQuery : unit -> int
Public Function ExecuteNonQuery () As Integer
Public Overrides Function ExecuteNonQuery () As Integer

Döndürülenler

Etkilenen satır sayısı.

Uygulamalar

Özel durumlar

SqlDbType olarak ayarlandığında İkili veya Value dışında bir değer kullanıldıStream. Akış hakkında daha fazla bilgi için bkz. SqlClient Akış Desteği.

-veya-

SqlDbType Olarak ayarlandığında Char, NChar, NVarChar, VarChar veya Value dışında bir değer kullanıldıTextReader.

-veya-

SqlDbType olarak ayarlandığında Value dışında bir değer kullanıldıXmlReader.

Kilitli bir satırda komut yürütülürken bir özel durum oluştu. Bu özel durum, Microsoft .NET Framework sürüm 1.0 kullanırken oluşturulmaz.

-veya-

Akış işlemi sırasında zaman aşımı oluştu. Akış hakkında daha fazla bilgi için bkz. SqlClient Akış Desteği.

Akış işlemi sırasında bir Streamveya XmlReaderTextReader nesnesinde hata oluştu. Akış hakkında daha fazla bilgi için bkz. SqlClient Akış Desteği.

Akış SqlConnection işlemi sırasında kapatılan veya bırakılan. Akış hakkında daha fazla bilgi için bkz. SqlClient Akış Desteği.

bir Streamakış işlemi sırasında , XmlReader veya TextReader nesnesi kapatıldı. Akış hakkında daha fazla bilgi için bkz. SqlClient Akış Desteği.

Örnekler

Aşağıdaki örnek bir SqlCommand oluşturur ve kullanarak ExecuteNonQueryyürütür. Örnek, Transact-SQL deyimi (UPDATE, INSERT veya DELETE gibi) olan bir dize ve veri kaynağına bağlanmak için kullanılacak bir dize geçirilir.

private static void CreateCommand(string queryString,
    string connectionString)
{
    using (SqlConnection connection = new SqlConnection(
               connectionString))
    {
        SqlCommand command = new SqlCommand(queryString, connection);
        command.Connection.Open();
        command.ExecuteNonQuery();
    }
}
Public Sub CreateCommand(ByVal queryString As String, _
  ByVal connectionString As String)
    Using connection As New SqlConnection(connectionString)
        Dim command As New SqlCommand(queryString, connection)
        command.Connection.Open()
        command.ExecuteNonQuery()
    End Using
End Sub

Açıklamalar

katalog işlemlerini gerçekleştirmek (örneğin, veritabanının yapısını sorgulamak veya tablolar gibi veritabanı nesneleri oluşturmak) veya UPDATE, INSERT veya DELETE deyimlerini yürüterek veritabanındaki verileri kullanmadan DataSet değiştirmek için kullanabilirsinizExecuteNonQuery.

hiçbir satır döndürmese ExecuteNonQuery de, parametrelere eşlenen tüm çıkış parametreleri veya dönüş değerleri verilerle doldurulur.

UPDATE, INSERT ve DELETE deyimleri için, dönüş değeri komutundan etkilenen satır sayısıdır. Diğer tüm deyim türleri için dönüş değeri -1'dir.

Eklenen veya güncelleştirilen bir tabloda tetikleyici olduğunda, dönüş değeri hem ekleme veya güncelleştirme işleminden etkilenen satır sayısını hem de tetikleyiciden veya tetikleyicilerden etkilenen satır sayısını içerir.

BAĞLANTıda SET NOCOUNT ON ayarlandığında (komutu yürütmeden önce veya bir parçası olarak ya da komutun yürütülmesiyle başlatılan bir tetikleyicinin parçası olarak) tek tek deyimlerden etkilenen satırlar, bu yöntem tarafından döndürülen etkilenen satırların sayısına katkıda bulunmayı durdurur.

Sayıya katkıda bulunan bir deyim algılanırsa, dönüş değeri -1 olur. Geri alma gerçekleşirse, dönüş değeri de -1 olur.

Şunlara uygulanır

Ayrıca bkz.