SqlConnection.PacketSize Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar storleken (i byte) på nätverkspaket som används för att kommunicera med en instans av 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
Egenskapsvärde
Storleken (i byte) på nätverkspaket. Standardvärdet är 8000.
- Attribut
Exempel
I följande exempel skapas en SqlConnection, inklusive inställningen Packet Size till 512 i reťazec pripojenia. Den visar PacketSize egenskaperna och ServerVersion i konsolfönstret.
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
Kommentarer
Om ett program utför masskopieringsåtgärder, eller skickar eller tar emot massor av text- eller bilddata, kan en paketstorlek som är större än standard förbättra effektiviteten eftersom den orsakar färre läs- och skrivåtgärder i nätverket. Om ett program skickar och tar emot små mängder information kan du ange paketstorleken till 512 byte (med värdet Paketstorlek i ConnectionString), vilket räcker för de flesta dataöverföringsåtgärder. För de flesta program är standardpaketstorleken bäst.
PacketSize kan vara ett värde i intervallet 512 och 32767 byte. Ett undantag genereras om värdet ligger utanför det här intervallet.
Om standardvärdet anges till ett tal som är större än 8 000 kommer paketen att använda MultiPage-allokeraren på instansen av SQL Server i stället för den mycket effektivare SinglePage-allokeraren, vilket minskar den övergripande skalbarheten för SQL Server. Mer information om hur SQL Server använder minne finns i arkitekturguiden Memory Management.