当前位置: 首页 > news >正文

达梦数据库 【-6111: 字符串转换出错】问题处理

达梦数据库 【-6111: 字符串转换出错】问题处理

  • 问题背景
  • 问题分析
  • 问题总结

问题背景

今天在更新数据库某一个值属性的时候,执行更新语句报错提示 -6111: 字符串转换出错,但是自己检查了sql语句,只是一个简单的sql,并没有需要字符串转换的地方,感觉很奇怪
在这里插入图片描述

问题分析

根据报错信息来分析,对于达梦数据库错误 -6111 通常表示在数据库操作中,尝试将一个字符串转换为另一种数据类型时失败了。这可能是因为字符串的格式与目标数据类型不兼容,例如,尝试将字符串转换为数值类型,但字符串中包含非数值字符。最终归结到当前语句的问题还是说发生了字符串转换错误。于是我再一次仔细的查看了当前sql语句

 UPDATE alm.sys_coa_detail set description='描述当前字段的属性' where id=49;

认真排查了当前sql涉及到的两个字段 description 和 id 最终发现原来 id 竟然也是一个字符串类型
在这里插入图片描述

问题总结

到这里,问题分析结束之后就知道问题怎么解决了,就是将sql的条件语句 id 值 换成字符串类型的数字就可以了。那么为什么会出现这么一条简单的更新语句报错的情况呢?其实在发生问题的时候,确实是比较懵的,不管对于新手开发者或者是老手开发者来说,这么简单的更新语句能报错,着实有点奇怪。那么现在找到问题原因之后再来回看为什么会发生这样的错误,一个原因就是表结构id 字段设计成 varchar 类型,这个确实有点反常规。另外一个就是不要太相信以往关于数据库字段的经验,而应该以实际表机构为准,不能想当然的认为 id 就一定是 Long 数值型,总的来说,就是需要认真细致就好了。

http://www.dtcms.com/a/191097.html

相关文章:

  • 【AI大模型】赋能【传统业务】
  • React构建组件
  • 微信小程序学习之轮播图swiper
  • 【unity游戏开发——编辑器扩展】EditorWindow自定义unity窗口拓展
  • 橙子、橘子相关(果实、叶片、疾病等)数据集大合集
  • SQL注入报错“Illegal mix of collations for operation ‘UNION‘”解决办法
  • 材料×工艺×AI:猎板PCB重构汽车电子四层板技术逻辑
  • [滑动窗口]越短越合法(可转化成越长越合法)
  • docker-compose的使用总结
  • Linux下的c/c++开发之操作Redis数据库
  • select、poll、epoll
  • MySQL库级管理:数据库管理与存储引擎剖析
  • kafka connect 大概了解
  • idea挂掉,会导致进程不结束,切换profile环境,导致token认证不通过
  • Linux Bash | Capture Output / Recall
  • Android Studio Meerkat与Gradle构建工具升级实战指南
  • 同设备访问php的多个接口会有先后等待问题
  • 电机的导程和脉冲之间的关系
  • Rust入门之高级Trait
  • 嵌入式学习笔记DAY20(链表,gdb调试)
  • 前端~三维地图(cesium)动态材质飞线
  • 香橙派/树莓派读取GY39数据
  • QMK键盘编码器(Encoder)(理论部分)
  • 实战案例:采集 51job 企业招聘信息
  • 安卓system/文件夹下的哪些文件夹可以修改为别的设备的
  • SRM电子采购管理系统:Java+Vue,集成供应商管理,实现采购流程数字化与协同优化
  • 麒麟环境下Selenium的使用
  • 如何高效集成MySQL数据到金蝶云星空
  • Spring的 @Validate注解详细分析
  • 力扣-108.将有序数组转换为二叉搜索树