mantis bug管理系统的二次asp.net 接口开发的时候,碰到编码的问题,如上述标题。

此系统的功能比较好,开源的php+myql.

mysql 的 默认设置

file:my.ini

[mysql]

default-character-set=latin1

[mysqld]

default-character-set=latin1

mysql 数据库的编码细节查询都是latin1编码。

Mantis 系统的Mysql数据库链接
    数据库编码方式:latin1
    当前项目文档的编码方式: utf8
   
    对中文字符串的更新操作和查询操作需要编码格式转换
    转换方式:Formarter.GetEncodeToLatin|Formarter.GetEncodeFromLatin
   
    更新sql语句之前使用set names latin1;
    例如:
        插入数据
        sql = "set names latin1;insert into tableName( col1 ) values( '?col1')"
        MySqlCommand comm = new MySqlCommand(sql, conn);
        MySqlParameter pcol1 = new MySqlParameter("?col1", MySqlDbType.VarChar);
        //编码转换
        pcol1.Value = Formarter.GetEncodeToLatin(col1);
        comm.Parameters.Add(pcol1);
       
        //查询数据
        sql = "set names latin1;select realName from mantis_user_table where id=" + reporterUserId;
        comm = new MySqlCommand(sql, conn);
        dr = comm.ExecuteReader();
        if (dr.Read())
        {
            reporterRealName = dr["realName"].ToString();
            //编码转换
            reporterRealName = Formarter.GetEncodeFromLatin(reporterRealName);
        }
        dr.Close();

        public static string GetEncodeToLatin(string src)
        ...{
            return System.Text.Encoding.GetEncoding("latin1").GetString(System.Text.Encoding.Default.GetBytes(src));
        }


        public static string GetEncodeFromLatin(string src)
        ...{
            return System.Text.Encoding.Default.GetString(System.Text.Encoding.GetEncoding("latin1").GetBytes(src));

      
        }

页面的编码也要统一,尽可能使用System.Text.Encoding.Default获取默认的编码方式,而不是utf8方式

在数据库中编码改变时,sql语句的set names latin1也要相应的变化才能正常录入中文

转载于:https://www.cnblogs.com/peter9/archive/2007/10/26/2362305.html

data too long for column 'Auser' at row 1相关推荐

  1. 解决:com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column ‘ip‘ at row 1

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 1. 报错: SQL []; Data truncation: Data too long for ...

  2. Data truncation: Data too long for column 'XXXXX' at row 1

    MySQL的默认编码是Latin1,不支持中文,所以会出现乱码 后来我把my.ini中的Latin1改为utf8 [mysql] default-character-set=utf8 [mysqld] ...

  3. Data too long for column ‘xxx‘ at row 1 ——数据库字段长度太短

    目录 一.写在前面 二.问题场景 三.异常重现 四.原因分析 五.解决方案 1.根据映射关系找到字段名 2.查询表结构 3.修改字段长度 4.修改完成,再次运行相关业务无误 六.核心代码 七.其他细节 ...

  4. Java常见问题之Data too long for column 'orResponse' at row 1

    本文介绍了出现Data too long for column 'trRequest' at row 1问题的解决方式 一.bug提示如下 Error Code: 1406. Data too lon ...

  5. Data truncation: Data too long for column 'xxx' at row 1

    Data truncation: Data too long for column 'xxx' at row 1 完整的错误内容可能是下面这样的: 严重: Servlet.service() for ...

  6. 成功解决data too long for column 'name' at row 1

    在程序中写了一段代码向数据库中插入数据,出现了data too long for column 'name' at row 1的问题.在google搜了一下解决方法,真是五花八门,也逐一试了一遍,终于 ...

  7. 【Data truncation: Data too long for column ‘XXX at row 1 报错】

    问题描述 在进行提交修改数据的时候,出现Error updating database. Cause: com.mysql.jdbc.MysqlDataTruncation: Data truncat ...

  8. Data too long for column ‘password‘ at row 1“

    django.db.utils.DataError: (1406, "Data too long for column 'password' at row 1") [19/Oct/ ...

  9. 解决:Data truncation: Data too long for column ‘XXX‘ at row 1

    * 问题: Data truncation: Data too long for column 'XXX' at row 1* 项目开发中遇到一个问题,下面是问题: Caused by: com.my ...

最新文章

  1. ThinkPHP项目笔记之登录,注册,安全退出篇
  2. [unity3d]导出安卓版设置
  3. 反编译APK文件的三种方法
  4. 周期均方根和有效值的区别_如何判断化学锚栓和膨胀锚栓的区别
  5. 滚轮事件的防冒泡、阻止默认行为
  6. atitit.提升开发效率---mda 软件开发方式的革命--(2)
  7. iOS如何优雅的处理“回调地狱Callback hell”(一)——使用PromiseKit
  8. asp.net大型制造业进销存源码 c#源代码 bs 本系统 为ASP.NET C# WinForm源码,数据库为SQL Server。系统完全开源,
  9. 制作svg格式矢量图
  10. 算法回顾---贝叶斯分类器
  11. Android 亮度调节
  12. MySQL数据库基础(1)数据库基础
  13. 度小满金融产品经理笔试题目
  14. PR调色 日常Vlog街拍时尚视频博客视频调色PR预设
  15. 逆向工程核心原理——PE文件格式分析
  16. 详细的PXE网络克隆教程
  17. 俄罗斯方块双人对战版
  18. EhViewer(E绅士)最新版_ehviewer白色版_Ehviewer显示网络错误怎么解决?e站进不去了怎么办
  19. 使用宏批量插入图片到Word表格
  20. 大学生“特种兵式旅游”:一日十几个景点,极限行程惊呆网友

热门文章

  1. html 轮播 平移,网站轮播图的实现-平移版
  2. java web 线程_多线程在javaweb中的应用
  3. python中exit的作用_python __enter__ 与 __exit__的作用,以及与 with 语句的关系
  4. 读空气java_空气质量指数查询示例代码
  5. java jmap 分析_利用java虚拟机的工具jmap分析java内存情况
  6. 基于python的文件加密传输系统 毕业论文_20183411 李丞灏 2020-2021 《python程序设计》 实验三 加密传输文件 实验报告...
  7. python字符串三种常用的方法或函数_python中字符串常用的函数
  8. 电路常识性概念(2)-电容
  9. mysql 创建事件_mysql怎么建立事件
  10. 联想拯救者y7000电池耗电快_游戏新选择:联想2020款拯救者Y7000/R7000爆料