我正在使用 ASP.NET MVC
和 MYSQL
开发一个 tamil
网站。
将值(泰米尔语文本)从 ASP.NET MVC 网站更新到数据库时,我所有的值都存储为这样的格式
??????????????
当我直接在我的数据库中运行插入查询时,我能够将泰米尔语文本插入到数据库中。
Asp.NET MVC:我有下面的代码
<meta charset="utf-8" />
MySQL - 创建表语法:
CREATE TABLE IF NOT EXISTS `Login` (
`ID` int(11) NOT NULL AUTO_INCREMENT,
`username` text COLLATE utf8_unicode_ci,
`password` mediumtext COLLATE utf8_unicode_ci,
PRIMARY KEY (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=6 ;
注意:我一直在使用Entity Framework
连接MySQL数据库。
我这边是不是少了什么东西?
来自评论
找到解决方案 - 只需将 ";Charset=utf8"
添加到连接字符串。
这是工作解决方案:
<add name="photostorageEntities"
connectionString="metadata=res://*/Models.Photos.csdl|
res://*/Models.Photos.ssdl|res://*/Models.Photos.msl;
provider=MySql.Data.MySqlClient;
provider connection string="server=ServerIP;
User Id=UID;password=PASS;
Persist Security Info=True;database=photostorage; Charset=utf8""
providerName="System.Data.EntityClient" />
谢谢大家! :)
最佳答案
我也遇到了完全相同的问题。
将此连接属性
添加到您定义数据库连接的jdbc
驱动程序。
<property name="connectionProperties" value="characterEncoding=UTF-8;characterSetResults=UTF-8"/>
希望这能解决您的问题。
关于mysql - 将泰米尔语文本存储到 MySQL 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20976120/