SqlCommand 的 CommandText 长度问题

2019-10-15 09:40发布

如题
了解一下各大db(主要了解Sqlserver)的 SqlCommand 的 CommandText 有没有长度限制
因为没出现过,所以想了解一下...

标签: c# sqlserver Db
2条回答
Luminary・发光体
2楼-- · 2019-10-15 09:58

答案引用于:https://stackoverflow.com/questions/21390537/sqlcommand-executenonquery-maximum-commandtext-length

与SQL Server版本有关:
http://technet.microsoft.com/en-us/library/ms143432.aspx
对于SQL Server 2012,批处理大小或SQL语句(字符串)=65536*网络数据包大小。
网络数据包大小是用于在应用程序和关系数据库引擎之间通信的表格式数据流(TDS)数据包的大小。默认数据包大小为4kb,由网络数据包大小配置选项控制。
简而言之,64k x 4k=256 MB。同样,这假设您使用的是默认的数据包大小。

查看更多
老娘就宠你
3楼-- · 2019-10-15 10:07

查看文档看看,至少目前为至没有写到这超这长度的,如果很长的,可以读性也可能不好。
在数据库里面如果是varchar(max)与nvarchar(max)这种是可以无限长的。没有带长度就可以无限长。

查看更多
登录 后发表回答