记一次线上数据库某个字段varchar长度不足,被自动截取情况

这周项目在运行中。作业人员反馈部分单据查看详情的时候,报错了。

查看接口代码没有问题后,观察数据库中的数据,发现有个json字段,因为过长被自动截取了,字段的类型为varchar,长度为2048

因为不确定该字段最长可能达到多少,长度取决于用户的信息长度有多少,所以为了避免之后再发生自动截取的问题, 决定改varchar为text

在修改的过程中,dba提示不满足大字段准入规则。该部分代码比较老,是17年开始就有的,业务逻辑一层套一层,比较复杂,所以在解释清楚之后,提交了字段类型修改的SQL。

下面是SQL:

ALTER TABLE arg_open_bos_key MODIFY bos_key text COMMENT 'key值',
MODIFY inner_bos_info text COMMENT 'bosInfo'

上面的两个modify因为改的是一个表,所以尽量放在一个SQL中去执行。

原文地址:https://www.cnblogs.com/StivenYang/p/13819518.html