Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 显示/插入特殊字符时出现问题,MySql ASP.NET_C#_Asp.net_Mysql_Special Characters - Fatal编程技术网

C# 显示/插入特殊字符时出现问题,MySql ASP.NET

C# 显示/插入特殊字符时出现问题,MySql ASP.NET,c#,asp.net,mysql,special-characters,C#,Asp.net,Mysql,Special Characters,我在正确插入和显示特殊字符方面遇到了问题。这是一个ASP.NET3.5应用程序C,数据库是MySql 如果我尝试使用控制台应用程序向数据库中插入特殊字符,我会收到一个错误,返回“字符串值不正确:'\x81 etc'。如果我试图显示它们,它会显示例如ü而不是ü 它在我的本地机器上工作,我能找到的唯一区别和最可能的问题根源是,在我的机器上,collation_server设置为latin1_swedish_ci,在dev服务器上设置为utf8_general_ci,在我的机器上,character

我在正确插入和显示特殊字符方面遇到了问题。这是一个ASP.NET3.5应用程序C,数据库是MySql

如果我尝试使用控制台应用程序向数据库中插入特殊字符,我会收到一个错误,返回“字符串值不正确:'\x81 etc'。如果我试图显示它们,它会显示例如ü而不是ü

它在我的本地机器上工作,我能找到的唯一区别和最可能的问题根源是,在我的机器上,collation_server设置为latin1_swedish_ci,在dev服务器上设置为utf8_general_ci,在我的机器上,character_set_server设置为latin1,在dev服务器上设置为utf8。在这两台机器上,其他所有设置都设置为utf8

我认为utf8是最好的使用方法,所以现在我不确定是否应该将开发服务器更改为与我的本地机器相同的工作方式,即使用拉丁语,或者将我的本地机器更改为与开发服务器相同的工作方式,并寻找另一种解决方案?有什么想法吗

谢谢


Annelie

按如下方式设置连接字符串:

"server=<server>;port=<port>;database=<db>;uid=<uid>;pwd=<password>;charset=utf8;"

将charset=utf8添加到其中

您能提供一个十六进制转储吗?从相关行的表中选择HEXcolumn?@NullUserException-426164656E2D57C3BC727474656D62657267是Baden-Württemberg的十六进制。好消息是,它在数据库中正确存储为UTF-8。在检索结果之前,请尝试运行以下查询:SET NAMES'utf8'@NullUserException-您的意思是我应该在哪里运行它?在获取值的存储过程中?
"server=localhost;port=3306;database=mydb;uid=root;pwd=root;charset=utf8;"