表型(不是很好,但我必须处理.)
CREATE TABLE `vr_connection_param` (
`connectionSize` enum('SMALL','MEDIUM','LARGE') COLLATE latin1_general_ci NOT NULL,
`type` enum('OVP_BASIC','OVP_EXTENDED','TPASS') COLLATE latin1_general_ci NOT NULL,
`numberConnection` smallint(5) unsigned DEFAULT NULL,
PRIMARY KEY (`connectionSize`,`type`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci记录数据
select * from vr_connection_param;
+----------------+--------------+------------------+
| connectionSize | type | numberConnection |
+----------------+--------------+------------------+
| SMALL | OVP_BASIC | 5 |
| SMALL | OVP_EXTENDED | 5 |
| MEDIUM | OVP_BASIC | 10 |
| MEDIUM | OVP_EXTENDED | 10 |
| LARGE | OVP_BASIC | 30 |
| LARGE | OVP_EXTENDED | 30 |
+----------------+--------------+------------------+试着更新
update vr_connection_param
INNER JOIN
(select distinct concat(`connectionSize`,`type`) from vr_connection_param where concat(`connectionSize`,`type`) like '%OVP_BASIC%')
AS TMP
SET type='OVPFE_EXPRESS';错误返回
ERROR 1265 (01000): Data truncated for column 'type' at row 1发布于 2014-07-17 07:16:53
您正在尝试在type列中设置值type,这是一个不包含该值的enum。因此,这个值是“截断”的(显然,根据我的''安装)。
还值得注意的是,语句的整个INNER JOIN部分是不操作的,因为您不使用TMP做任何事情。因此,您只是在使用(实际上)没有UPDATE的情况下执行WHERE。
https://stackoverflow.com/questions/24797087
复制相似问题