找回密码
 立即注册
首页 业界区 安全 一则修复数据的case,来看什么是*解决问题要彻底* ...

一则修复数据的case,来看什么是*解决问题要彻底*

吁寂 6 天前
我司年久不修的商旅系统,今天突然遇到一个问题,程序执行的一个sql时出现数据类型转换异常。
经排查,这是一个多表join的sql。
  1. select ...
  2. from t_enterprise ent
  3. join t_passenger psg on ent.ent_id = psg.ent_id
  4. where ...
复制代码
上面sql涉及的企业表t_enterprise里,ent_id是bigint。企业乘机人表t_passenger里,ent_id是varchar(20)。
而由于运营操作失误,导致t_passenger表的ent_id字段值出现了非数字的字符串。显然,这种情况,执行这个sql就会出现数据类型转换异常。
开发者及时修正了 t_passenger表的ent_id字段值。这个查询sql得以正常执行。
但,这就完事了吗?
不。
开发者需要做的事情是:将t_passenger表的ent_id字段类型改为bigint。





【EOF】欢迎大家关注我的微信公众号「靠谱的程序员」,解锁应用开发中的更多靠谱本领。
1.png


来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册