有关Microsoft OLE DB Provider for SQL Server的问题

时间:2010-11-05 01:59:58

标签: sql-server ado

实际上我正在使用带有ADO的Microsoft OLE DB Provider for SQL Server,我的问题是关于连接字符串中使用的Packet Size参数,MSDN文档说

  

数据包大小表示网络数据包   大小以字节为单位包大小   属性值必须介于512和之间   32767.默认的SQLOLEDB网络数据包大小为4096。

如果我使用此参数的最大值(32767),

在我的应用程序的性能中是否存在任何好处或缺点?

2 个答案:

答案 0 :(得分:2)

您可以使用较小的数据包大小来调整许多短小事务,并使用较大的数据包大小来调整较少的大型传输。

原因:小型传输上的数据包大小太大,而您浪费资源传输填充数据。 大型传输中的数据包大小太小,而且浪费资源生成/传输数据包标头。

答案 1 :(得分:0)

如果您只是将批量加载/上传设置为最大值。

更大的数据包更好。当你提到的实际传输少量数据时,它是填充。 如果您的连接不稳定并且希望数据在到达第一个记录后立即显示得更快,则较小的数据包是合理的。对于更大的数据包,您必须等待“更长时间”才能获得第一个结果。