如何在MySQL存储过程中插入Unicode数据

如何在MySQL存储过程中插入Unicode数据,mysql,asp.net,stored-procedures,Mysql,Asp.net,Stored Procedures,我已经创建了一个应用程序。用于前端和后端的Visual Studio 2010是MySQL 5.3版本。在这个应用程序中,我使用MySQL中的存储过程。我用英语插入数据,效果很好。但我使用相同的存储过程插入Unicode日期(如Marathi或Hindi),然后生成一个错误: 第1行“p_hindicontent”列的字符串值不正确:“\xE0\xA4\x90\xE0\xA4…” 请帮帮我 提前感谢您您必须这样编写存储过程: DROP PROCEDURE IF EXISTS `cn_marath

我已经创建了一个应用程序。用于前端和后端的Visual Studio 2010是MySQL 5.3版本。在这个应用程序中,我使用MySQL中的存储过程。我用英语插入数据,效果很好。但我使用相同的存储过程插入Unicode日期(如Marathi或Hindi),然后生成一个错误:

第1行“p_hindicontent”列的字符串值不正确:“\xE0\xA4\x90\xE0\xA4…”

请帮帮我


提前感谢您

您必须这样编写存储过程:

DROP PROCEDURE IF EXISTS `cn_marathidata`.
`SPemp`
$$
CREATE DEFINER = `root`@
`localhost`
PROCEDURE `SPemp` ( in P_name text charset utf8, in P_address text charset utf8)
BEGIN
INSERT INTO Employee
  (
    name,
    address

  )
VALUES
  (
    P_name,
    P_address
  );
END $$

DELIMITER;

希望此技巧能帮助您

您必须像这样编写存储过程:

DROP PROCEDURE IF EXISTS `cn_marathidata`.
`SPemp`
$$
CREATE DEFINER = `root`@
`localhost`
PROCEDURE `SPemp` ( in P_name text charset utf8, in P_address text charset utf8)
BEGIN
INSERT INTO Employee
  (
    name,
    address

  )
VALUES
  (
    P_name,
    P_address
  );
END $$

DELIMITER;

希望这条小贴士能帮助你

好吧,你需要给我们看些东西!向我们展示存储过程以及调用它的代码。我们看不懂你的屏幕,也看不懂你的大脑,你必须在这里告诉我们……这个字符串是以“”开头的吗?如果是这样的话,发送给MySQL的字符串是用UTF-8编码的,但MySQL认为它们是用其他字符集编码的;你必须正确地设置密码。我们需要看看您是如何连接到MySQL的,以便进一步提供建议。好吧,您需要向我们展示一些东西!向我们展示存储过程以及调用它的代码。我们看不懂你的屏幕,也看不懂你的大脑,你必须在这里告诉我们……这个字符串是以“”开头的吗?如果是这样的话,发送给MySQL的字符串是用UTF-8编码的,但MySQL认为它们是用其他字符集编码的;你必须正确地设置密码。我们需要了解您如何连接到MySQL,以便进一步提供建议。是的,没错!由于这个错误,有必要为参数、结果和可能的局部变量显式指定一个字符集。utf8mb4帮助了我是的,没错!由于该缺陷,有必要为参数、结果和可能的局部变量显式指定字符集。utf8mb4帮助了我