MySQL存储过程 编码问题解决

1,使用MySQl 存储过程,MySQL使用utf8编码,从Java 后台中执行SQL语句代码

{call test.pcd_intface_book('xxxxx',1)}

 出现异常

ERROR:Incorrect string value: '\xE9\x87\x91\xC3\x97\xE8...' for column 'content' at row 1

 此乃数据库编码问题,MySQL数据库使用utf8编码,在建立存储过程的时候也必须使用utf8编码

代码如下:

DROP PROCEDURE IF EXISTS `pcd_intface_book`;

DELIMITER ;;

CREATE DEFINER=`root`@`%` PROCEDURE `pcd_intface_book`(content varchar(80) charset 'utf8',stat int(2))

BEGIN
	#Routine body goes here...

INSERT INTO tb_ebs_book(pid,info,datetime,status)values(0,content,NOW(),stat);

END

 注意,哪个字段需要utf8编码,就在 varchar(80)后面加上 charset ‘utf8’,utf8记得加上两个单引号

猜你喜欢

转载自sziitjiang.iteye.com/blog/1604432
今日推荐