使用RODBC函数sqlQuery()
可以发送到SQL Server的最大字符串长度/字节是多少?我一直在使用sqlQuery()
主要用于通过在一个字符串中批量发送多个语句来更新和插入表中的记录。例如,此字符串有3个查询语句,并且当它没有被换行符和空格分解时,使用nchar()
的字符串长度/字节大小为146。
update_queries = "UPDATE tbl SET col1 = newval1 WHERE col2 = val1;
UPDATE tbl SET col1 = newval2 WHERE col2 = val2;
UPDATE tbl SET col1 = newval3 WHERE col2 = val3;"
我可以用sqlQuery(db_conn, update_queries)
发送,所以这可以追溯到我发布的问题。我从SQL Server(64位)文档中遇到了Network Packet Size这个概念。它指出最大批量大小为65,536 *网络数据包大小,其中默认数据包大小为4 KB。我假设65,636是以字节为单位,所以然后是字节方式,它是65,536 * 4,000 = 262,144,000字节。那么262,144,000是包含有效查询的字符串的最大长度吗?有人可以澄清我在这里是否有正确的想法,或者是否有我需要知道的另一个SQL Server概念或ODBC概念?感谢