mariadb 10.4在插入时截断'column\u name'列的数据,但在更新时不截断

58wvjzkj  于 2021-07-24  发布在  Java
关注(0)|答案(1)|浏览(260)

我有下表(mariadb 10.4)称为p:

+----------------+----------------------------------------------------------------------------------------+------+-----+---------+----------------+
| Field          | Type                                                                                   | Null | Key | Default | Extra          |
+----------------+----------------------------------------------------------------------------------------+------+-----+---------+----------------+

| id             | int(11)                                                                                | NO   | PRI | NULL    | auto_increment |
| description    | text                                                                                   | YES  |     | NULL    |                |
| url            | text                                                                                   | YES  |     | NULL    |                |
| source         | enum('source_a','source_b','source_c','source_d','source_e')                           | YES  |     | NULL    |                |

我目前在这个表上有几百万行,其中有a、b、c和d。就在最近,我们应用了一个迁移来添加源代码,并开始出现错误 ERROR 1265 (01000): Data truncated for column 'source' at row 1 尝试插入包含源代码的行时。产生错误的所用命令如下: INSERT INTO p (description, url,source) VALUES ('test', 'https://google.com.br', 'source_e'); 与任何其他源的插入仍在工作。
编辑数据库中已存在的行时,行为会发生更改,错误不会显示: UPDATEpSETsource='source_e' WHEREid='3'; 产量: Query OK, 1 rows affected (0.001 sec) 有没有办法调试这个场景?我已经尝试更改数据库的日志级别,以便更好地了解问题( SET GLOBAL log_warnings=3; )但是错误信息没有改变。
我还试着改变 source_e 姓名收件人 source_e_ ,错误仍然存在。
顺便说一句,我确实更改了字段的名称以符合公司的政策。

6ie5vjzr

6ie5vjzr1#

原来是我的错。我们碰巧在这个表的插入上有一个触发器,它提供了一个物化视图类型的表。我所要做的就是在另一个表的source字段中添加'source\ e'。

相关问题