com.microsoft.sqlserver.jdbc.SQLServerException: 传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。此 RPC 请求中提供了过多的参数。

时间:2024-03-24 12:07:00

sqlserver在做批量插入的时候出现这个错误:

com.microsoft.sqlserver.jdbc.SQLServerException: 传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。此 RPC 请求中提供了过多的参数。最多应为 2100。  

com.microsoft.sqlserver.jdbc.SQLServerException: 传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。此 RPC 请求中提供了过多的参数。
项目中用的是SpringBoot+Mybatis+sqlserver4.0,这个错是sqlserver抛出来的。 进过验证,上述错误中的2100为插入的总字段数。
比如一条insert插入的字段个数是30个,那么批量插入一次性最多只能插入70条

insert table() values(),(),()....

如果超过71条,就会出现这个错误。这是sqlserver自身的限制。