关于MYSQL4.0数据向MYSQL5.0移植的问题? 打印 E-mail
  2008-04-16
我以前用的MYSQL是mysql-4.0.18-win,以前所有的数据库文件都是在4.0上建的,编码是utf-8。
4.0的建表文件。
[php]----------------
CREATE TABLE fuser(
id varchar(30) NOT NULL,
name varchar(20) NOT NULL,
sex tinyint,
password varchar(200),
phone varchar(30),
email varchar(50),
jtime datetime,
active tinyint(4) Default ‘1‘,
PRIMARY KEY (id));
------------------[/php]
现在我的MYSQL升级到了mysql-5.0.18-win32,我把4.0的data目录下的数据表copy到5.0的data目录下,结果发现:
我用phpmyadmin管理器查看:

[php]字段 类型 整理 属性 Null 默认 额外 操作
----------------------------------------------------------------------------
id varchar(10) utf8_general_ci 否
name varchar(6) utf8_general_ci 否
sex tinyint(4) 是 NULL
password varchar(66) utf8_general_ci 是 NULL
Phone varchar(10) utf8_general_ci 是 NULL
email varchar(16) utf8_general_ci 是 NULL
jtime datetime 是 NULL
active tinyint(4)
------------------------------------------------------------------------------[/php]
问题就在于,5.0为什么会自动把类型改掉,比如原name是varchar(20),却被改成了varchar(6),并且改不了字段名称及类型。
提示:
[php]MySQL 返回:
#1406 - Data too long for column ‘Phone‘ at row 5 [/php]
还有,我把数据清空后,就能改字段名称及类型,没什么问题。令人头痛的是,我有好多数据,不能全清空吧。
大家帮我看看,谢谢啦~~
发表评论
网友评论

发表评论
用户访客
标题
BBCode:Web AddressEmail AddressBold TextItalic TextUnderlined TextQuoteCodeOpen ListList ItemClose List
评论



下一篇 >