zoukankan      html  css  js  c++  java
  • 已创建表 XXX,但其最大行大小XXX超过了每行的最大字节数(8060)。

    转自:http://hi.baidu.com/zhuhailangke/blog/item/5b7b0c1392fd7b47f919b86f.html

    今天在查询分析器里创建数据库,出现警告:警告: 已创建表 XXX,但其最大行大小(8926)超过了每行的最大字节数(8060)。如果结果行长度超过 8060 字节,则此表中行的 INSERT 或 UPDATE 将失败。

    一个表每行大小超过了的最大字节8060,建议使用将你表中占用字节数较多的
    char (nvchar)或者varchar(nvarchar) 类型 改为text(ntext)类型


    SQL的规定,一条记录的最大存储长度为8060字节.

    所以,如果你创建类似下面的表就会有此警告:
    create table t(a varchar(8000),b varchar(8000))

    因为a+b=16000的长度已经超过了一条记录的最大存储长度8060
    这种情况下,表可以正常地被创建,只要你存储/修改数据时
    datalength(a)+datalength(b)<8060
    那你的操作就不会有任何问题.
    否则,操作就会失败

    原来是这个意思。如果怕有错,可以使用text。

    SQL Code:

    createtable # (C1 varchar(8000), C2 varchar(8000))
    /*
    警告: 已创建表 '#',但其最大行大小(16025)超过了每行的最大字节数(8060)。如果结果行长度超过 8060 字节,则此表中行的 INSERT 或 UPDATE 将失败。
    */

    insertinto # select'a', 'b'--> OK
    /*

    (所影响的行数为 1 行)
    */

    insertinto # selectreplicate('a',8000), replicate('b',8000) --> ERROR
    /*

    服务器: 消息 511,级别 16,状态 1,行 1
    无法创建大小为 16013 的行,该值大于允许的最大值 8060。
    语句已终止。
    */

  • 相关阅读:
    CodeForces
    设计模式之装饰模式和代理模式区别与联系
    java反射 概念
    Java 反射详解 转载
    Spring--AOP 例子
    MD5加密
    面向对象编程思想(OOP)
    软件测试assert
    junit4.9测试用例 spring测试用例 Assert 注解
    断言
  • 原文地址:https://www.cnblogs.com/wangpei/p/2264104.html
Copyright © 2011-2022 走看看