![]() |
|
首页 │ Apache │ Linux│ Java│ MySQL│ 注册│帮助 | |||
相关问题
测试用的表结构和数据
CREATE TABLE `t` (
`id` int(10) unsigned NOT NULL auto_increment,
`tid` tinyint(3) unsigned NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
--
-- 导出表中的数据 `t`
--
INSERT INTO `t` (`id`, `tid`) VALUES (1, 1);
=========================
执行下面的语句:
UPDATE `t` SET tid = tid-2 WHERE id=1;
会显示:#1264 - Out of range value adjusted for column 'tid' at row 1
于是在网上搜索到这个:
http://hi.baidu.com/ekylin/blog/ ... af44094b36d687.html
| QUOTE: |
| MySQL错误"Out of range value adjusted for column ..." MySQL升级到5.0.17后,在执行sql语句 INSERT INTO `news` (`ID`, `Title`, `Content`) VALUES ('', '标题', '正文'); 时出现错误: #1264 - Out of range value adjusted for column 'ID' at row 1 原因: 新版本的MySQL对字段的严格检查。 解决方法: 修改my.ini,将 sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 改为 sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"。 重新启动MySQL。 2006-04-02备注: 以后写sql语句时,类型和值最好严格一些。 |
我按照里面说的,改了一下my.ini,重启mysql
同样执行上面的sql,虽然这次不出错了,但是就是我要说的问题出现了,tid字段的值变成了tinyint(3) unsigned这个类型的最大数255了
记得以前用mysql4.0的时候,它会减到0
怎么样才能让它不减到最大数,而是0呢?还要修改mysql的哪些配置啊?
别告诉我要先select...
提问者:飞豹游侠 08-22 14:02
答复

