列'的数据被截断;剖面图';在第1行,我是mysql
错误1265:第1行“profile_pic”列的数据被截断 SQL语句:列'的数据被截断;剖面图';在第1行,我是mysql,mysql,Mysql,错误1265:第1行“profile_pic”列的数据被截断 SQL语句: ALTER TABLE `student`.`student_info` CHANGE COLUMN `profile_pic` `profile_pic` VARCHAR(50) NOT NULL DEFAULT 'images/profile.png' CREATE TABLE `student_info` ( `name` varchar(45) NOT NULL, `email` varchar(45
ALTER TABLE `student`.`student_info`
CHANGE COLUMN `profile_pic` `profile_pic` VARCHAR(50) NOT NULL DEFAULT 'images/profile.png'
CREATE TABLE `student_info` (
`name` varchar(45) NOT NULL,
`email` varchar(45) NOT NULL,
`password` varchar(45) NOT NULL,
`profile_pic` varchar(500) DEFAULT 'images/profile.png',
PRIMARY KEY (`email`),
UNIQUE KEY `email_UNIQUE` (`email`),
UNIQUE KEY `password_UNIQUE` (`password`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
错误:运行故障回复脚本时出错。详情如下
错误1050:表“学生信息”已存在
SQL语句:
ALTER TABLE `student`.`student_info`
CHANGE COLUMN `profile_pic` `profile_pic` VARCHAR(50) NOT NULL DEFAULT 'images/profile.png'
CREATE TABLE `student_info` (
`name` varchar(45) NOT NULL,
`email` varchar(45) NOT NULL,
`password` varchar(45) NOT NULL,
`profile_pic` varchar(500) DEFAULT 'images/profile.png',
PRIMARY KEY (`email`),
UNIQUE KEY `email_UNIQUE` (`email`),
UNIQUE KEY `password_UNIQUE` (`password`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
当我将profile_pic column的值设置为not null时,此错误会闪烁。但是,如果我没有这样做,则此错误不会发生。请任何人解释此错误发生的原因以及如何删除此错误将Alter查询更改为
ALTER TABLE `student`.`student_info`
CHANGE COLUMN `profile_pic` `profile_pic` VARCHAR(500) NOT NULL DEFAULT 'images/profile.png'
在您的模式中,您以前使用
varchar(500)
定义了profile\u pic
,现在您尝试使用varchar(50)
将其设置为非空,因此您的列包含长度超过50个字符的数据,因此您会看到此截断错误仍然出现相同的问题,而我的列为空:(