SqlConnection.PacketSize Özellik

Tanım

SQL Server örneğiyle iletişim kurmak için kullanılan ağ paketlerinin boyutunu (bayt cinsinden) alır.

public:
 property int PacketSize { int get(); };
public int PacketSize { get; }
[System.Data.DataSysDescription("SqlConnection_PacketSize")]
public int PacketSize { get; }
member this.PacketSize : int
[<System.Data.DataSysDescription("SqlConnection_PacketSize")>]
member this.PacketSize : int
Public ReadOnly Property PacketSize As Integer

Özellik Değeri

Ağ paketlerinin boyutu (bayt cinsinden). Varsayılan değer 8000'dir.

Öznitelikler

Örnekler

Aşağıdaki örnek, bağlantı dizesi değerini 512 olarak ayarlamak Packet Size da dahil olmak üzere bir SqlConnectionoluşturur. konsol penceresinde ve ServerVersion özelliklerini görüntülerPacketSize.

private static void OpenSqlConnection()
{
    string connectionString = GetConnectionString();
    using (SqlConnection connection = new SqlConnection(connectionString))
    {
        connection.Open();
        Console.WriteLine("ServerVersion: {0}", connection.ServerVersion);
        Console.WriteLine("PacketSize: {0}", connection.PacketSize);
    }
}

static private string GetConnectionString()
{
    // To avoid storing the connection string in your code,
    // you can retrieve it from a configuration file, using the
    // System.Configuration.ConfigurationSettings.AppSettings property
    return "Data Source=(local);Initial Catalog=AdventureWorks;"
        + "Integrated Security=SSPI;Packet Size=512";
}
Private Sub OpenSqlConnection()
    Dim connectionString As String = GetConnectionString()
    Using connection As New SqlConnection(connectionString)
        connection.Open()
        Console.WriteLine("ServerVersion: {0}", connection.ServerVersion)
        Console.WriteLine("PacketSize: {0}", connection.PacketSize)
    End Using
End Sub

Private Function GetConnectionString() As String
    ' To avoid storing the connection string in your code,  
    ' you can retrieve it from a configuration file, using the
    ' System.Configuration.ConfigurationSettings.AppSettings property
    Return "Data Source=(local);Database=AdventureWorks;" _
      & "Integrated Security=SSPI;Packet Size=512;"
End Function

Açıklamalar

Bir uygulama toplu kopyalama işlemleri gerçekleştirirse veya çok fazla metin veya görüntü verisi gönderir veya alırsa, ağ okuma ve yazma işlemlerinin daha az olmasına neden olduğundan varsayılandan daha büyük bir paket boyutu verimliliği artırabilir. Bir uygulama az miktarda bilgi gönderir ve alırsa, paket boyutunu 512 bayt olarak ayarlayabilirsiniz (içindeki ConnectionStringPaket Boyutu değerini kullanarak), bu çoğu veri aktarımı işlemi için yeterlidir. Çoğu uygulama için varsayılan paket boyutu en iyisidir.

PacketSize 512 ve 32767 bayt aralığındaki bir değer olabilir. Değer bu aralığın dışındaysa bir özel durum oluşturulur.

Varsayılan değerin 8000'den büyük bir sayıya ayarlanması, paketlerin çok daha verimli SinglePage ayırıcısı yerine SQL Server örneğinde MultiPage ayırıcısını kullanmasına neden olur ve SQL Server genel ölçeklenebilirliğini azaltır. SQL Server belleği nasıl kullandığı hakkında daha fazla bilgi için bkz. Bellek Yönetimi Mimarisi Kılavuzu.

Şunlara uygulanır

Ayrıca bkz.