在asp.net与mysql数据库打交道的时候,由于配置的问题,会遇到自己写的方法在读取数据库中数据的时候,英文,数字可以正常通过,但是中文就无法通过,以登录为例(方法略),当输入英文用户名的时候可以正常登录,但输入中午的时候方法就会报错,解决方法如下:
  1,在 mysql数据库安装目录下找到my.ini文件,把default-character-set的值修改为 default-character-set=gb2312(修改两处),保存,重新启动
  2,找到asp.net文件的web.config文件,在</httpModules>标签的后面添加<globalization requestEncoding="gb2312" responseEncoding="gb2312"/>
  3,如果连接数据库的字符串写在web.config里面,则在连接字符串里面添加charset=gb2312(如:<add key="test" value="server=localhost;database=dbtest;uid=root;pwd=root;charset=gb2312"/>)
  4,重新编译。
  有时还会遇到数据库里面显示的数据是中午,但读取到页面之后成了乱码,而且在写存储工程的时候,有中文出现,编译不会通过,我的解决方法是,我的解决方法是,把中文都转化为十六进制,然后读出来。代码如下托福答案
  Mysql:
  drop procedure if exists proc_hm_holiday_top5;
  create procedure proc_hm_holiday_top5()
  begin
  select *,(select userinfo_name from hm_userinfo where userinfo_id=holiday_uid) as username,
  case
  when holiday_type=1 and holiday_typeTwo=1 then _utf8 0xE8AFB7E581872FE79785E5818720
  when holiday_type=1 and holiday_typeTwo=2 then _utf8 0xE8AFB7E581872FE4BA8BE5818720
  when holiday_type=1 and holiday_typeTwo=3 then _utf8 0xE8AFB7E581872FE4B8A7E5818720
  when holiday_type=1 and holiday_typeTwo=4 then _utf8 0xE8AFB7E581872FE5A99AE5818720
  when holiday_type=1 and holiday_typeTwo=5 then _utf8 0xE8AFB7E581872FE4BAA7E5818720
  when holiday_type=1 and holiday_typeTwo=6 then _utf8 0xE8AFB7E581872FE5B9B4E5818720
  when holiday_type=1 and holiday_typeTwo=7 then _utf8 0xE8AFB7E581872FE585B6E4BB9620
  when holiday_type=2 then _utf8 0xE58AA0E78FAD
  when holiday_type=3 then _utf8 0xE587BAE5B7AE
  when holiday_type=4 then _utf8 0xE7A7BBE4BC91
  end
  as holiday_class from hm_holiday where 1=1 order by holiday_addTime desc limit 5;
  end;
  C#代码(将中文转化为十六进制)
  public string GetHexFromChs(string s)
  {
  if ((s.Length % 2) != 0)
  {
  s += " ";//空格
  }
  System.Text.Encoding chs = System.Text.Encoding.GetEncoding("utf-8");
  byte[] bytes = chs.GetBytes(s);
  string str = "";
  for (int i = 0; i < bytes.Length; i++)
  {
  str += string.Format("{0:X}", bytes[i]);
  }
  return str;
  }
  private void button1_Click(object sender, EventArgs e)
  {
  string shuru = textBox1.Text.Trim().ToString();
  string str = GetHexFromChs(shuru);
  textBox2.Text = str.Trim().Trim();
  }

asp.net使用Mysql乱码处理的更多相关文章

  1. ASP.NET 访问 MySql

    1. 首先需要安装mysql, 脚本之家下载地址: http://www.jb51.net/softs/2193.html 或者去mysql.com官网都可以,一路next,安装好后,有个简单配置,提 ...

  2. SpringMVC保存数据到mysql乱码问题

    SpringMVC保存数据到mysql乱码问题 乱码问题常见配置 一.web.xml配置过滤器 <filter> <filter-name>encoding-filter< ...

  3. 10分钟学会理解和解决MySQL乱码问题

    在阅读本文之前,强烈建议对字符集编码概念还比较模糊的同学 阅读下博主之前对相关概念的一篇科普:十分钟搞清字符集和字符编码 本博客已经迁移至: http://cenalulu.github.io/ 为了 ...

  4. ASP 编码转换(乱码问题解决)

    ASP 编码转换(乱码问题解决) 输出前先调用Conversion函数进行编码转换,可以解决乱码问题. 注,“&参数&”为ASP的连接符,这里面很多是直接调用的数据库表字段,实际使用请 ...

  5. 理解和解决MySQL乱码问题【转】

    本文来自:http://www.cnblogs.com/cenalulu/p/4325693.html 要了解为什么会出现乱码,我们就先要了解从客户端发起请求,到MySQL存储数据,再到下次从表取回客 ...

  6. ASP.NET 连接MySQL数据库 详细步骤

    ASP.NET默认的数据库是MS SQL Server,微软的数据库产品.事实上,如果不计成本因素的话,Windows Server + IIS + MS SQL Server + ASP.NET是网 ...

  7. 理解和解决MySQL乱码问题

    本文将详细介绍MySQL乱码的成因和具体的解决方案 在阅读本文之前,强烈建议对字符集编码概念还比较模糊的同学 阅读下博主之前对相关概念的一篇科普:十分钟搞清字符集和字符编码 MySQL出现乱码的原因 ...

  8. ASP+Access UTF-8 网页乱码问题解决办法

    用ACCESS数据库和ASP做网站时用UTF-8编码有时会出现乱码,再者网页出错或者刷新页面后就是乱码,如果数据库取值乱码在开头加上<%@LANGUAGE="VBSCRIPT" ...

  9. Asp.Net连接Mysql报错Out of sync with server

    Asp.Net连接Mysql报错Out of sync with server 原因:程序引用的MySql.Data.dll版本高于服务器版本 解决:下载一个低版本的MySql.Data.dll,项目 ...

随机推荐

  1. 【Linux】鸟哥的Linux私房菜基础学习篇整理(六)

    1. 正则表达式特殊符号.[:alnum:]:代表英文大小写字符及数字:[:alpha:]:代表英文大小写字符:[:blank:]:代表空格键与[Tab]键:[:cntrl:]:代表键盘上的控制键,即 ...

  2. ♫【JS基础】壹零零壹

    如何面试一个前端开发者? function spacify(str) { return str.split('').join(' ') } console.log(spacify('hello wor ...

  3. Android *.db-journal

    config.xml <!-- The default journal mode to use use when Write-Ahead Logging is not active. Choic ...

  4. bzoj1588 [HNOI2002]营业额统计(Treap)

    1588: [HNOI2002]营业额统计 Time Limit: 5 Sec  Memory Limit: 162 MBSubmit: 11485  Solved: 4062[Submit][Sta ...

  5. 分页过滤SQL求总条数SQL正则

    public static void main(String[] args) throws Exception { String queryForScanUsers_SQL = "selec ...

  6. Servlet线程安全

    public class servletDemo1 extends HttpServlet { int i=0; public void doGet(HttpServletRequest reques ...

  7. 完美逆向百度手机助手5.0底部菜单栏 - Android Tabhost 点击动画

    先看看百度手机助手5.0的样子: 发现他是用一个CustomTabHost.java来实现底部TabHost点击效果的,很漂亮,点击Tab的时候文字会上跑,图片会从底部跑出来的一个小动画. 下面我用自 ...

  8. validate方法配置项

    validate()方法配置项 submitHandler 通过验证后运行的函数,可以加上表单提交的方法 invalidHandler 无效表单提交后运行的函数 ignore 对某些元素不进行验证 r ...

  9. Android 4.4(KitKat)中VSync信号的虚拟化

    原文地址:http://blog.csdn.net/jinzhuojun/article/details/17293325 Android 4.1(Jelly Bean)引入了Vsync(Vertic ...

  10. iphone匹配邮箱的正则表达式

    NSString *str = [NSString stringWithString:@"\\b([a-zA-Z0-9%_.+\\-]+)@([a-zA-Z0-9.\\-]+?\\.[a-z ...