C# 类型为varbinary的大数据的SQL Server超时(最大值)

C# 类型为varbinary的大数据的SQL Server超时(最大值),c#,sql-server,C#,Sql Server,我在SQLServer表中保留了大约12MB的二进制数据。保存此数据的列的类型为varbinary(MAX) 当我从服务器下载这个二进制数据时,如果我在局域网中,它是正常的。但是,我在尝试获取数据的C#应用程序中遇到SQL Server超时错误 出现此错误的原因可能是什么?数据库实例的远程查询超时属性默认为600秒。将此值更改为零没有帮助 可以连接并从服务器获取一些其他值。例如,我首先检查同一个表中的DateTime值,以确定是否应下载~12 MB的数据。如果内容是新的,那么我开始下载大数据。您

我在SQLServer表中保留了大约12MB的二进制数据。保存此数据的列的类型为
varbinary(MAX)

当我从服务器下载这个二进制数据时,如果我在局域网中,它是正常的。但是,我在尝试获取数据的C#应用程序中遇到SQL Server超时错误

出现此错误的原因可能是什么?数据库实例的远程查询超时属性默认为600秒。将此值更改为零没有帮助


可以连接并从服务器获取一些其他值。例如,我首先检查同一个表中的
DateTime
值,以确定是否应下载~12 MB的数据。如果内容是新的,那么我开始下载大数据。

您的连接超时是多少?RemoteQuery超时由服务器定义,用于测量任务从执行到完成所用的时间,但连接超时由客户端定义。 尝试将子句添加到连接字符串中,如:

Connect Timeout=300;
看看这是否会影响你的错误。 以下是有关差异的一些信息:
http://vyaskn.tripod.com/watch_your_timeouts.htm是否使用System.Data.SqlClient进行查询?如果是这样,您可以调整SqlCommand.CommandTimeout值。默认值为30秒


在多长时间后会出现超时错误?我大约在35秒后出现此错误。因此,这肯定不是因为600秒超时。有两种超时:连接超时和命令(查询执行)超时。请参阅您为连接字符串中的“连接超时”参数设置的值。是的,这就是问题所在。我将SqlCommand.CommandTimeout设置为一个较大的值,例如600秒,现在不再出现错误。非常感谢。