【发布时间】:2017-10-25 04:35:07
【问题描述】:
Incorrect string value: '\xE8' for column 'P10' at row 1
我正在为 EMS RFID 通信制作存储过程并将数据包返回给 c# 应用程序。但它显示错误,如 P10 字符上的图像。怎么了??第一个版本是 c# 代码。我正在尝试迁移到 mysql 存储过程。
请提出任何建议。
(我已经检查过字符集是 utf8)
CREATE DEFINER=`root`@`localhost` FUNCTION `GetRFIDWriteCommand`(`Param1` VARCHAR(50))
RETURNS text CHARSET utf8
LANGUAGE SQL
DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
COMMENT
BEGIN
DECLARE P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10 CHAR;
DECLARE TIMEOUT INT;
DECLARE RET TEXT;
SET TIMEOUT = 1000;
SET P0 = char(2); # &H2 STX
SET P1 = char(2); # &H2
SET P2 = char(0); # &H0
SET P3 = char(LENGTH(Param1) + 7);
SET P4 = char(6); # &HD #write command
SET P5 = char(0);
SET P6 = char(0); # brStart_Add
SET P7 = char(0);
SET P8 = char(LENGTH(Param1)); # brLength #length (=100)
SET P9 = char(3);
SET P10 = char(232); # <=== ERROR POINT
SET RET = CONCAT(P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,char(3));
return RET;
END
【问题讨论】:
标签: c# mysql stored-procedures