Exception: Too many parameters were provided in this RPC request. The maximum is 2100.
[Microsoft][SQL Native Client][SQL Server]The incoming tabular data stream (TDS) remote procedure call (RPC) protocol stream is incorrect. Too many parameters were provided in this RPC request. The maximum is 2100.
SQL语句的报错
如果是SELECT查询OR条件语句形如:SELECT * FROM tablename WHERE x1 OR x2 OR x3 OR x4 OR ... OR x2101,OR条件个数超过2100就会报错,可以改为UNION ALL。
如果是SELECT查询IN条件语句形如: SELECT * FROM tablename WHERE columnname IN (1,2,3,4,5, ........ , 2101 ),IN参数个数超过2100,会报上面的错误。可以创建临时表,将这些数据写入临时表,再关联。
--Create new table
Create Table temp (myvalues uniqueidentifier)
-- Join new table with your table
SELECT t1.*
FROM tablename t1
JOIN temp t2
ON t1.myvalues = t2.myvalues
存储过程和函数的报错
对于存储过程和函数,参数最大个数为2100
参见如下限制:
https://docs.microsoft.com/en-us/sql/sql-server/maximum-capacity-specifications-for-sql-server
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。