设为首页
收藏本站
最新电影
> 子栏目 Asp | Jsp | XML | XSL | Div+Css | 自定义函数 | 数据库 | 脚本特效
您现在的位置: 首页=>后台技术=>数据库 订阅本栏目  
mysql出现data too long for column xxx解决方案
时间: 2009-10-04 15:43:11 阅读次数:2619


导入数据的时候,MYSQL 报错:
Data too long for column

解决办法:

mysql的安装目录my.ini里找到(此文件在mysql安装目录下)
sql-mode=”STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION”
把其中的STRICT_TRANS_TABLES,去掉,
或者把sql-mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

注释掉,然后重启mysql就ok了

==============================================

相关解释:

· STRICT_TRANS_TABLES

为所有存储引擎启用严格模式非法数据值被拒绝后面有详细说明

· STRICT_TRANS_TABLES

为事务存储引擎启用严格模式,也可能为非事务存储引擎启用严格模式后面有详细说明

严格模式控制MySQL如何处理非法或丢失的输入值有几种原因可以使一个值为非法例如,数据类型错误,不适合列,或超出范围当新插入的行不包含某列的没有显示定义DEFAULT子句的值,则该值被丢失

对于事务表,当启用STRICT_ALL_TABLES或STRICT_TRANS_TABLES模式时,如果语句中有非法或丢失值,则会出现错误飞飞Asp技术!乐园语句被放弃并滚动

对于非事务表,如果插入或更新的第1行出现坏值,两种模式的行为相同语句被放弃,表保持不变如果语句插入或修改多行,并且坏值出现在第2或后面的行,结果取决于启用了哪个严格选项:

· 对于STRICT_ALL_TABLES,MySQL返回错误并忽视剩余的行但是,在这种情况下,前面的行已经被插入或更新这说明你可以部分更新,这可能不是你想要的要避免这点,最好使用单行语句,因为这样可以不更改表即可以放弃

· 对于STRICT_TRANS_TABLES,MySQL将非法值转换为最接近该列的合法值并插入调整后的值如果值丢失,MySQL在列中插入隐式默认值在任何情况下,MySQL都会生成警告而不是给出错误并继续执行语句13.1.5节,“CREATE TABLE语法”描述了隐式默认值

严格模式不允许非法日期,例如'2004-04-31'飞飞Asp技术乐园它不允许禁止日期使用“零”部分,例如'2004-04-00'或“零”日期要想禁止,应在严格模式基础上,启用NO_ZERO_IN_DATE和NO_ZERO_DATE SQL模式

如果你不使用严格模式(即不启用STRICT_TRANS_TABLES或STRICT_ALL_TABLES模式),对于非法或丢失的值, MySQL将插入调整后的值并给出警告在严格模式,你可以通过INSERT IGNORE或UPDATE IGNORE来实现参见13.5.4.22节,“SHOW WARNINGS语法”

下面的特殊模式快速组合了前面所列的模式

其中包括大多数最新版本MySQL中的所有模式值旧版本中,组合模式不包括新版本中没有的不适用的具体模式值

· ANSI

等同REAL_AS_FLOAT、PIPES_AS_CONCAT、ANSI_QUOTES、IGNORE_SPACE参见1.8.3节,“在ANSI模式下运行MySQL”

· DB2

等同PIPES_AS_CONCAT、ANSI_QUOTES、IGNORE_SPACE、NO_KEY_OPTIONS、NO_TABLE_OPTIONS、NO_FIELD_OPTIONS

· MAXDB

等同PIPES_AS_CONCAT、ANSI_QUOTES、IGNORE_SPACE、NO_KEY_OPTIONS、NO_TABLE_OPTIONS、NO_FIELD_OPTIONS、 NO_AUTO_CREATE_USER

· MSSQL

等同PIPES_AS_CONCAT、ANSI_QUOTES、IGNORE_SPACE、NO_KEY_OPTIONS、NO_TABLE_OPTIONS、 NO_FIELD_OPTIONS

· MYSQL323

等同NO_FIELD_OPTIONS、HIGH_NOT_PRECEDENCE

· MYSQL40

等同NO_FIELD_OPTIONS、HIGH_NOT_PRECEDENCE

· ORACLE

等同PIPES_AS_CONCAT、ANSI_QUOTES、IGNORE_SPACE、NO_KEY_OPTIONS、NO_TABLE_OPTIONS、NO_FIELD_OPTIONS、NO_AUTO_CREATE_USER

· POSTGRESQL

等同PIPES_AS_CONCAT、ANSI_QUOTES、IGNORE_SPACE、NO_KEY_OPTIONS、NO_TABLE_OPTIONS、NO_FIELD_OPTIONS

· TRADITIONAL

等同STRICT_TRANS_TABLES、STRICT_ALL_TABLES、NO_ZERO_IN_DATE、NO_ZERO_DATE、ERROR_FOR_DIVISION_BY_ZERO、NO_AUTO_CREATE_USER


站内搜索    

下一篇Microsoft SQL Server 2005 Service Pack 3(sqlserver2005 sp3)微软官方下载地址

上一篇数据类型详解 MSSQL

本栏目最新 栏目最新列表
access由于您和其他用户试图同时改变同一数
Microsoft SQL Server 2005 Service Pack 3
MySQL时间戳转换的方法
清除,删除表中数据的方法
mysql常用时间函数用法解释
网站优化策划 栏目最新列表
增加网站外链的快速方法
网站上线前必做的30个检查
新的友情链接参考标准(没有google的PR情况
优化Google的AdSense广告的五个工具
王通讲SEO八大基础
站点最新 站点最新列表
微博推广的一些技巧
xhEditor v1.1.7 发布,
收集的一些轻量级非常实
50个新鲜兼容最新版本的
javascript中cookie的设
Excel中出现#VALUE!、#D
jquery插件:飞飞表情插件
十个使用HTML5开发的精彩
支持HTML5的浏览器有哪些
飞妮莫属:漫画:如何写出
历史最热10条信息  
MIME介绍 及 [1] [2] [3]
巧用Google和迅雷来下载
VIA Rhine II Fast Ethe
Transact SQL 常 [1] [2]
电脑常用端 [1] [2] [3]
十道羊皮卷 欣赏+mp3版+
Do you get a kick out
每日一句:A friend and
每日一句:Theres no tu
网站开发常用手册
相关专题 相关专题列表
MySQL时间戳转换的方法
mysql常用时间函数用法解
MySql数据库的列类型(字
MySQL Order By Rand()效
mysql中的top,limit的用
启动/停止/重启MySQL 的
mysql错误Duplicate ent
重启mysql的几种方法
mysql出现data too long
phpmysql导入超过2M的数
 width= 
伟哥博客 西安房产 123最新电影 三四六四