做一个积极的人

编码、改bug、提升自己

我有一个乐园,面向编程,春暖花开!

文章目录

  • java.sql.SQLException: #22001
  • 结论
  • 问题排查
  • 解决
  • 自己的一点小思考

java.sql.SQLException: #22001

java.sql.SQLException: #22001at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084)at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4232)at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4164)at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2615)at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2776)at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2838)at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2082)at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2334)at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2262)at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:22

报错,没见过,一天两个sql爆出了这个错误! 然后发现直接去搜 java.sql.SQLException: #22001 竟然没有 能匹配的帖子。自己整理一篇,方便后续回顾,也希望帮助到需要的伙伴!

结论

-- 表字段长度
`desc` varchar(255) DEFAULT NULL COMMENT '描述'
--长度884
职场上没有谁是永远靠得住的,正如西方名言“没有永远的朋友,也没有永远的敌人,只有永远的利益”。我们要想让别人靠得住,首先是自己站得住。如果自己站不住,别人一定靠不住。你自己不懂得如何保护自己,别人也不好多管闲事,自然帮不了你。
在职场什么最重要,让你成为一个璀璨的星星,答案就是:核心竞争力。如果说你技术好,比你技术好的多的是,如果说你经验丰富,比你丰富的人多的去。所以我们的核心竞争力是什么呢?记得我的上司给我说过这样一句话:”如果你的理念独一无二和略胜一筹的话,再加上稍稍的技术那就是你在别人面前可以竞争的资本“。我们的亮点也就在这。学会一种理念,超越别人思维的理念,你就是耀眼的金子。

某些字段长度大于表字段的长度,导致执行sql的时候,报错

我遇到的问题是因为是老的项目,前端对输入的内容没有做任何校验,后台也没有相应的校验,导致不符合业务格式的数据能够通过代码层层逻辑,最终撞到数据库的南墙,头破了,"爆出"错误!

细心的伙伴可能已经看出,上面这个字段desc是mysql的一个关键字。建议不要使用!

阿里巴巴明确代码规范手册,Mysql数据库 >> 建表规约:

4、【强制】禁用保留字,如 desc 、 range 、 match 、 delayed 等,请参考 MySQL 官方保留字

问题排查

1、首先通过报错信息找到具体出现错误的代码行,我这里出现错误是因为有一行更新数据 的sql 报出的错。

2、知道具体的行数后,通过debug或者打印(查看)日志的方式打印出需要更新的数据。

3、通过打印的数据和数据库字段值进行比对。看一下是哪个字段出现的问题。

解决

根据实际业务进行修改,如果实际业务的确需要保存那么长的数据,则修改字段长度。 否则对数据进行检验,不允许用户填写这么长的内容。

自己的一点小思考

1、如果发现这个问题,看一下是不是之前设计表的时候,字段长度没有考虑好,长度不符合实际业务需求。

2、如果是长度设计合理,那在编写代码的时候,一定要对用户输入的内容做检验(前端+后台),永远不要相信用户的输入内容!!!


谢谢你的阅读,如果您觉得这篇博文对你有帮助,请点赞或者喜欢,让更多的人看到!祝你每天开心愉快!


不管做什么,只要坚持下去就会看到不一样!在路上,不卑不亢!

博客首页 : https://aflyun.blog.csdn.net/

愿你我在人生的路上能都变成最好的自己,能够成为一个独挡一面的人

© 每天都在变得更好的阿飞云

SQLException: #22001你知道这个错误码吗相关推荐

  1. mysql 22001_SQLException: #22001你知道这个错误码吗

    java.sql.SQLException: #22001 结论 问题排查 解决 自己的一点小思考 java.sql.SQLException: #22001 java.sql.SQLExceptio ...

  2. SQLException错误码

    这里说的错误码是指SQLException.getErrorCode()返回的int类型错误码. 比如常见的有: // 1049 Unknown database // 1060 Duplicate ...

  3. MySQL 5.7 服务端 错误码 (机翻)

    官方文档:https://dev.mysql.com/doc/mysql-errors/5.7/en/server-error-reference.html MySQL服务器将一些错误消息写入其错误日 ...

  4. Objective-C错误码

    NSMachErrorDomain 头文件目录:/usr/include/mach/kern_return.h #define KERN_SUCCESS 0#define KERN_INVALID_A ...

  5. [微信官方文档] 小程序-错误码信息与解决方案表

    错误码信息与解决方案表 错误码是通过binderror回调获取到的错误信息. 代码 异常情况 理由 解决方案 1000 后端错误调用失败 该项错误不是开发者的异常情况 一般情况下忽略一段时间即可恢复. ...

  6. 解决微信H5获取SDK授权报错提示errMsg: “config:fail,Error: 系统错误,错误码:63002,invalid signature [20200908 22:17:17][]“

    如果常规检查都做过可以仔细看下微信开放文档 这个里面的报错原因 如果都不是那么极有可能是(恭喜你!看样子你的H5页面日活人数还蛮多[呲牙]) 获取腾讯微信平台access_token超过每日默认上限2 ...

  7. 【FFmpeg】ffmpeg中函数返回的错误码:AVERROR及AVERROR_*

    1.AVERROR FFmpeg的错误码大部分使用的PIOSIX标准中错误码的负值. AVERROR定义在文件 FFmpeg-n4.2.1/libavutil/error.h 中 #define AV ...

  8. 【数据库】mysql报错 编码码1130 和错误码1146

    1.错误编码1130 问题:1130-Hose'172.16.12.129'is not allowed to connect to this MySQL server 原因:MySQL服务器没有创建 ...

  9. 关于接口使用抛异常还是返回错误码,下列哪些说法符合《阿里巴巴Java开发手册》

    关于接口使用抛异常还是返回错误码,下列哪些说法符合<阿里巴巴Java开发手册>:答案在文末 A. 向公司外部提供的http/api接口,推荐使用"错误码"方式返回异常或 ...

最新文章

  1. linux 系统权限 数字含义
  2. 史上最全的CSS hack方式一览(转)
  3. Windows 环境下安装redis 及其PHP Redis扩展
  4. 科大星云诗社动态20210202
  5. 分布式系统基本副本协议
  6. git登录相关操作梳理
  7. Ubuntu 安装截图工具Shutter,并设置快捷键 Ctrl+Alt+A
  8. 豆瓣镜像源的使用与pip包版本控制
  9. Java多态形式_Java多态
  10. Java之JvisualVM简介
  11. linux内核网桥源码,Linux-kernel网桥代码分析(二)
  12. sop流程图模板_SOP模板-标准操作流程编写程序.doc
  13. 将文字定位到浮动图片上|CSS
  14. thinkphp6 使用PhpOffice导入Excel表格(上传文件)
  15. MySQL自定义函数和存储过程
  16. python中字典的使用_python中的字典用法大全
  17. 6.oop-类和对象
  18. 神技—终端显示Linux系统信息
  19. b500k电位器引脚接法_电位器的作用以及接线方式,电位器的应用场合、选用原则...
  20. Windows+L键不能锁屏解决方案

热门文章

  1. 使用springboot+vue+element-ui模仿蓝墨云班课
  2. CLIP-对比图文多模态预训练的读后感
  3. 华为机试:机器人走迷宫
  4. 数据库设计 - 01外卖配送系统
  5. 小程序动态隐藏分享按钮
  6. 锤子使用手册 android,锤子爱好者的新手使用指南
  7. 年轻人如何提高职场视野
  8. 【This is 广告】百度直达号——@ 加 关键字
  9. 教程篇(7.0) 06. FortiGate基础架构 单点登录(FSSO) ❀ Fortinet 网络安全专家 NSE 4
  10. 婚姻家庭法简答题及答案