zoukankan      html  css  js  c++  java
  • mysql保存乱码(C#)

    解决办法只有一个就是在配置文件中强制指定编码格式:
    <add name="TSDBEntities" connectionString="metadata=res://*/TSModel.csdl|res://*/TSModel.ssdl|res://*/TSModel.msl;provider=MySql.Data.MySqlClient;provider connection string=&quot;server=localhost;user id=root;password=xxxxxx;persistsecurityinfo=True;database=tsdb;Character Set=utf8&quot;" providerName="System.Data.EntityClient" />
    <add name="Default" connectionString="server=localhost;port=3306;database=test;uid=root;password=111111;Charset=utf8;persistsecurityinfo=True;" providerName="MySql.Data.MySqlClient" />

    还有一个要注意的:找到mysql的安装根目录,找到 .ini 文件,在其中设置编码格式:

    [mysqld]
    basedir=C:Program FilesMySQLMySQL Server 5.6
    datadir=C:Program FilesMySQLMySQL Server 5.6data
    default-storage-engine=MYISAM
    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
    character-set-server=utf8

    [client]
    default-character-set=utf8
    [mysql]
    default-character-set=utf8
    character-set-server=utf8

    查看数据库属性,把数据库字符集和排序规则都选成utf8。表中每一列也有自己的字符集类型,选择utf8,正常情况当你设置了配置文件后,再重启mysql服务,然后再建立的表都应该是utf8了,

    我用ABP框架做的,删除所有表,没有删除库,然后重新执行migration添加表就好了。

    还有一个地方要修改,打开mysql 查询语句:

    show variables like '%char%'; -- 显示所有编码格式
    SET character_set_server='utf8';-- 把该编码格式修改为 utf8,需要的话把其他的也改成 utf8。

    也有可能是其他原因:
    my.ini配置:https://www.cnblogs.com/cheng2015/p/7685017.html
    乱码:https://www.cnblogs.com/zhchoutai/p/7364835.html

  • 相关阅读:
    HDUOJ-----Difference Between Primes
    HDUOJ----(4706)Children's Day
    poj-------Common Subsequence(poj 1458)
    poj----Maximum sum(poj 2479)
    scanf/sscanf %[]格式控制串的用法(转)
    HDUOJ--------Text Reverse
    HDUOJ---hello Kiki
    HDUOJ-----X问题
    POJ-----C Looooops
    POJ--Strange Way to Express Integers
  • 原文地址:https://www.cnblogs.com/xsj1989/p/10768956.html
Copyright © 2011-2022 走看看