mysql存储过程 中文报错_mysql使用存储过程无法插入中文数据解决方法

去年才上完数据库,我就开始在生活中使用数据库来存放东西了,但是存放不可能人工每次去insert啊!于是我创建了存储过程,因为是中国人,肯定存放的有中文啊,但是却遇见了无法插入数据,下面我就给大家分享下我如何解决无法插入中文的存储过程。

我的版本号:

163c2ecd8d6343e42b04fa2410253a42.png

做了一个给表插入数据的简单存储过程,发现提示信息如下:

3030ae30de1eac0ef678dd99dd83fc86.png

于是上网查资料,研究了一下终于解决好!现在简单叙述一下。

遇见的问题应该是由两种原因引起的;

第一:使用Navicat数据库客户端建立表设置问题导致的,如下:

e53f8be1bce3460701412a846daa3752.png

字符集问题,将上边操作完成后,基本上可以在表里插入汉字,没有报错现象了,本以为问题解决了,但换了新的数据库使用存储过程时依然报错,而且重复这样都不行,然后开始认为是存储过程出问题啦,果然,经查阅资料发现,mysql存储过程插入参数涉及中文的要将varchar类型修改为nvarchar,代码如下:

f1a8972d9747f3bedd8a298bb7abf7fb.png

好了,完美收工!结果如下:

8ae24589bce1dc56bb2c5a1f4c30c511.png

以上方法是我找到的两种问题,并将之处理的方案,如读者有其他更好的解决方案,也可以提出来,相互进步;当然类似的问题可能由于其他原因导致,在这里就不过多叙述了!

也希望我在三月低的数据库三级能考个好成绩把!

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值