SqlConnection.PacketSize Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera rozmiar (w bajtach) pakietów sieciowych używanych do komunikowania się z wystąpieniem SQL Server.
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
Wartość właściwości
Rozmiar (w bajtach) pakietów sieciowych. Wartość domyślna to 8000.
- Atrybuty
Przykłady
Poniższy przykład tworzy obiekt SqlConnection, w tym ustawienie wartości Packet Size
512 w parametry połączenia.
PacketSize Wyświetla właściwości i ServerVersion w oknie konsoli.
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
Uwagi
Jeśli aplikacja wykonuje operacje kopiowania zbiorczego lub wysyła lub odbiera wiele danych tekstowych lub obrazów, rozmiar pakietu większy niż domyślny może zwiększyć wydajność, ponieważ powoduje mniej operacji odczytu i zapisu w sieci. Jeśli aplikacja wysyła i odbiera małe ilości informacji, możesz ustawić rozmiar pakietu na 512 bajtów (przy użyciu wartości Rozmiar pakietu w elemecie ConnectionString), która jest wystarczająca dla większości operacji transferu danych. W przypadku większości aplikacji domyślny rozmiar pakietu jest najlepszy.
PacketSize może być wartością z zakresu 512 i 32767 bajtów. Wyjątek jest generowany, jeśli wartość znajduje się poza tym zakresem.
Ustawienie wartości domyślnej na liczbę większą niż 8000 spowoduje, że pakiety będą używać alokatora MultiPage w wystąpieniu SQL Server zamiast znacznie bardziej wydajnego alokatora SinglePage, zmniejszając ogólną skalowalność SQL Server. Aby uzyskać więcej informacji na temat sposobu SQL Server używa pamięci, zobacz Przewodnik po architekturze zarządzania pamięcią.