【TiDB 使用环境】测试
【TiDB 版本】7.1.0
【操作系统】centos
【部署方式】自建
复现案例
mysql> show variables like 'sql_mode';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| sql_mode | |
+---------------+-------+
1 row in set (0.00 sec)
mysql> show create table t3\G
*************************** 1. row ***************************
Table: t3
Create Table: CREATE TABLE `t3` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`k` int(11) NOT NULL DEFAULT '0',
`c` char(120) NOT NULL DEFAULT '',
`pad` char(60) NOT NULL DEFAULT '',
`varch_test` varchar(64) DEFAULT null,
PRIMARY KEY (`id`) /*T![clustered_index] CLUSTERED */,
KEY `k_1` (`k`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin
mysql> insert into t3(k,c,pad) select k,c,pad from t3;
Query OK, 4 rows affected (0.00 sec)
Records: 4 Duplicates: 0 Warnings: 0
mysql> select * from t3;
+----+---+---+-----+------------+
| id | k | c | pad | varch_test |
+----+---+---+-----+------------+
| 1 | 1 | 1 | 1 | NULL |
| 2 | 1 | 1 | 1 | NULL |
| 3 | 1 | 1 | 1 | NULL |
| 4 | 1 | 1 | 1 | NULL |
| 5 | 1 | 1 | 1 | NULL |
| 6 | 1 | 1 | 1 | NULL |
| 7 | 1 | 1 | 1 | NULL |
| 8 | 1 | 1 | 1 | NULL |
+----+---+---+-----+------------+
8 rows in set (0.01 sec)
mysql> alter table t3 modify varch_test varchar(64) not null default "";
ERROR 1265 (01000): Data truncated for column 'varch_test' at row 1