相关文章推荐
听话的吐司  ·  SQL ...·  3 月前    · 
直爽的荔枝  ·  Git | ...·  1 年前    · 
会开车的铁板烧  ·  echo | Microsoft Learn·  2 年前    · 
咆哮的木瓜  ·  超赞!EMNLP2023 | ...·  2 年前    · 

背景:新增列语句如:“alter table 表名 add 列名 float default 0 with values”(用VS2010做网站,这句话是在C#代码里执行的)

报错提示:

警告: 已经创建表 'xxxx',但是它的最大行大小超过了允许的最大字节数 8060。如果得到的行超过此大小限制,则对此表的 INSERT 或 UPDATE 操作将失败。
不能创建大小为 8066 的行,该大小大于所允许的最大行大小 8060。

原因:这是因为超过了最大行容量的限制,比如有1000列,全是float(8字节),这就8000字节了,马上就超了,再新增列的时候可能就无法新增列了,就会提示上述错误,以上说的是用代码新增列,手动可能可以新增。


解决办法:改变现有列的数据类型,比如float改为decimal(8,2),nvarchar(1000)改为(500)等 。

转载于:https://www.cnblogs.com/chakyu/p/7406782.html

原文链接: http://www.cnblogs.com/chakyu/p/7406782.html 警告: 已创建表 JD_QZ,但其最大行大小(8438)超过了每行的最大字节数(8060)。如果结果行长度超过 8060 字节,则此表中行的 INSERT 或 UPDATE 将 失败 。 今天在查询分析器里面执行了一个建表的 sql 语句,结果有这个提示,但是表创建成功,并且插入数据没有问题,那么,这个错误信息到底意味着什么呢?查了一下帮助,得到以下解答:该错误信息表明表中具有可变长度列(如 在 sql server 2008 中想插入学生信息表中的一条记录,但是总是不成功,提示如下: 开始我一直以为是数据类型不一致的问题,于是检查一好多遍T_UserInfo表的第七个属性也就是department属性,始终没有发现什么。后来上网上查的 时 候,发现也有很多人遇到类似的问题,但是却没有合适的解决方案。在自己捣鼓了半天后,决定请教别人,其实有些东西请教别人并不一定要浪费那个人多长 时 间,也没有必要 有 时 候在一个表中插入数据,(插入语句都正常,没有任何错误)但是插入报错,这 时 候可以查找一下是否这张表是否加了trigger(触发器),导致数据插入 失败 的。、 还有类似的删除操作也有可能出现这种情况。 假如正常的插入语句,但是表加了触发器,如下触发器: 假设当前的数据库是:数据库A ALTER trigger [dbo].[tri_proc] on [dbo].[表A]      一般出现这种现象都是适用 sql 文件在查询分析器里建库的 时 候,现象一般都是提示: "警告: 已创建表 'XXXX,但其最大行大小(89960)超过了每行的最大字节数(8060)。如果结果行长度超过 8060 字节,则此表中行的 I 如果你操作 sql 时 候碰见这个提示,一般是数据库设计 时 候有问题,看看该表所有字段字节长度之和是不是超过了8060,一般性的文本长度100即可,一般性的备注200即可,再长的可以用text或其他类型来存储,如果表中varchar或nvarchar的字段长度超过200的有很多个,那十有八九是超了 新增 列语句:alter table 表名 add 列名 float default 0 with values。 警告: 已经创建表 'xxxx',但是它的最大行大小超过了允许的最大字节数 8060。如果得到的行超过此大小限制,则对此表的 INSERT 或 UPDATE 操作将 失败 。 不能创建大小为 8066 的行,该大小大于所允许的最大行大小 8060。 问题的现象在创建表A的 时 候,出现“信息 511,级别 16,状态 1,第 5 行  无法创建大小为 的行,该值大于允许的最大值 8060。”的信息提示。很奇怪,网上查了一下,是因为要插入表的数据类型的定义类型小了些,把对应数据类型的大小调整一下就可好些了。但新问题又出现了,后来由于将表A的数据Select Into的形式写入表B,表A的数据结构不明确,因为来自表A的数据是动态的列,是经过列转行的形... #报错信息: INSERT 语句与 FOREIGN KEY SAME TABLE 约束"FK__Course__Cpno__5FB337D6"冲突。该冲突发生于数据库"S_T",表"dbo.Course", column ‘Cno’。 语句已终止。 原因:这是因为我们在创建课程表 时 写了这句话 foreign key (Cpno) references Course(Cno) 这是一个表级约束条件,Cpno是外码,参照表和被参照表都是Course,被参照列是Cno。 报错截图: 1.创建数据库,通过新建查询,无法粘贴写好的 sql 语句。 问了便于维护,我在创建数据库表 时 将 sql 语句写入一个文档,想通过粘贴到查询窗口并执行的方式生成表,可是右键没有粘贴键,经过多次尝试,没有,没有,没有…后来发现每次只能粘贴一行???Excuse me?我上百千行的 sql 不能就一行一行的粘啊? 于是,转为另一策略: 直接执行 sql 文件 2.找不到执行 sql 的入口,网上是有一种执行命令的方式(o... 转自:http://blog.163.com/wex660@126/blog/static/24153065 2008 111411389746/ 今天朋友碰到这个问题,好像说过很多遍了,那就发布出来以免每次都说。    一、现象    一般出现这种现象都是适用 sql 文件在查询分析器里建库的 时 候,现象一般都是提示: "警告: 已创建表 'XXXX,但其最大行大小(89960)超过了每行的最大字节数...