当前位置:   article > 正文

mysql中类型不匹配问题Incorrect datetime value: for column changeDate at row 1_mysql incorrect datetime value: '2020' for column

mysql incorrect datetime value: '2020' for column 'insureexpiredate' at row

标题:mysql中Incorrect datetime value: for column ‘changeDate’ at row 1

一、分析可能是变量类型不匹配或者字符集不匹配
情形一:变量类型不匹配
1)在命令行输入如下代码,会出现标题所示的错误Incorrect datetime value: **'1869\00C4ê05\00D4\00C203\00C8\00D5' f**or column 'changeDate' at row 1

mysql> DELIMITER $
mysql> CREATE PROCEDURE amyp5(IN needDate DATETIME,OUT changeDate DATETIME)
    -> BEGIN
    -> SET changeDate=DATE_FORMAT(needDtae,'%Y年%m月%d日');
    -> END $
  • 1
  • 2
  • 3
  • 4
  • 5

2)分析,原因是SET changeDate=DATE_FORMAT(needDtae,'%Y年%m月%d日');返回的是varchar类型,而自己的形参为OUT changeDate DATETIMEdatetime类型,发生了类型不匹配,故出现错误。

3)解决措施OUT changeDate DATETIME 将datetime换成varchar(20)即可

如图所示:
在这里插入图片描述

情形二:字符集不匹配
设置字符集
错误:Incorrect string value: ‘\xD5\xD1’ for column ‘beautyName’ at row 1
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/607106
推荐阅读
相关标签
  

闽ICP备14008679号