SqlConnection.PacketSize Tulajdonság

Definíció

Lekéri a SQL Server egy példányával való kommunikációhoz használt hálózati csomagok méretét (bájtban).

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

Tulajdonság értéke

A hálózati csomagok mérete (bájtban kifejezve). Az alapértelmezett érték 8000.

Attribútumok

Példák

Az alábbi példa létrehoz egy SqlConnection, beleértve a Packet Size 512 értékre állítását a kapcsolati karakterlánc. Megjeleníti a PacketSize konzolablakban lévő tulajdonságokat és ServerVersion tulajdonságokat.

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

Megjegyzések

Ha egy alkalmazás tömeges másolási műveleteket végez, vagy sok szöveges vagy képadatot küld vagy fogad, az alapértelmezettnél nagyobb csomagméret javíthatja a hatékonyságot, mivel kevesebb hálózati olvasási és írási műveletet okoz. Ha egy alkalmazás kis mennyiségű információt küld és fogad, beállíthatja a csomagméretet 512 bájtra (a Csomagméret értékének használatával a ConnectionString), ami a legtöbb adatátviteli művelethez elegendő. A legtöbb alkalmazás esetében az alapértelmezett csomagméret a legjobb.

PacketSize 512 és 32767 bájt közötti érték lehet. Kivétel jön létre, ha az érték ezen a tartományon kívül esik.

Ha az alapértelmezett értéket 8000-nél nagyobb számra állítja, akkor a csomagok a sokkal hatékonyabb SinglePage-kiosztó helyett a SQL Server példányán használják a MultiPage-allokátort, ami csökkenti a SQL Server általános méretezhetőségét. A SQL Server memóriahasználatáról további információt a Memory felügyeleti architektúra útmutatójában talál.

A következőre érvényes:

Lásd még