zoukankan      html  css  js  c++  java
  • sqlserver2008的sql语句支持的最大长度

    想写一个sql语句,很长,主要是in后跟着无数个用户ID,(虽然实现方式很低级,但是还是凑合着用吧)

    不知道sql最大长度是多少,看了 SQL Server 的最大容量规范,写的是

    包含 SQL 语句的字符串的长度(批大小)的最大大小/数量:65,536 * 网络数据包大小

    网络数据包大小是啥东东?你就不能明说最大长度吗是几吗? 微软,你就欺负我不懂TCP吧!

    好吧,你不说,我自己测试。

    写了一个字符串函数,形成 N个Guid字符串(相当于N*32长度),

    然后用select * from table where id in (字符) 执行

    1万个Guid字符串,在查询分析器通过,OK,看来支持32万长度(320K)

    再加个数量级到10万个,也OK!支持3.2M长度

    在加个数量级到100万个,也OK!!支持32M长度,不过太慢了,sql执行了5分钟才返回结果

    在加个数量级到1000万个,也OK!!!支持320M长度,用了1小时3分钟才返回结果

    没有时间,也没有必要做进一步测试了,

    反正如果sql采用In('guid','guid','guid')结构,则至少支持长度guid的个数为1000万个,总字符长度为3.2亿,320M

    结论是你就放心用吧,你这一辈子恐怕是遇不到超出32000万字节长度的sql语句了!

  • 相关阅读:
    关于ThreadLocal的理解
    常用Linux软件安装
    Spring事务注解@Transactional失效的问题
    使用jackson转换xml格式数据进行响应
    创建简单web程序了解servlet
    JDBC
    StringBuild类
    Canlendar 日期类
    Java Date 时间类的使用
    QWeb
  • 原文地址:https://www.cnblogs.com/lishan4002/p/4987982.html
Copyright © 2011-2022 走看看