zoukankan      html  css  js  c++  java
  • 编码不一致问题-Illegal mix of collations

    在解决bug时候碰到一个Illegal mix of collations问题,这个因为编码不一致到导致的错误。错误发生率较为高。经常发生在时间的比较上面。较为常见的一劳永逸的办法,是更改数据库的编码,使其一致性。这个也是推荐值较高的方法。
        但是i现实的问题,是数据表往往已经存了大量的数据,更改数据编码将带来很多无法预知的错误。所以只能在程序里面强制做一次类型转换,来解决问题。其实就是这么个思想,思想都是一样,既然提示编码不一致,那就使其数据编码一致,从而进行比较。
        在遇到的这个bug中,就是因为时间所谓的编码不一致导致,为了避免更改数据表,直接修改程序代码。加入CAST函数进行强制转换。用convert函数效果是一样的。
        CAST跟convert函数相比更具ANSI标准的功能,使用CAST的函数能更容易的被其它数据库软件使用,但功能相对弱一些。不过,当小数转化为数值,并保留原始表达式中的小数数值时,仍然需要使用CAST。因此建议首先使用CAST,如果遇到必须使用CONVERT的情况时再使用CONVERT。 

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    SOHO路由器
    SYN Flood
    Java线程池
    BIO
    Java虚拟机的基本结构
    Linux 的Ext2
    java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
    cassandra-CQL
    数列分段`Section II`(二分
    Exams(二分
  • 原文地址:https://www.cnblogs.com/tangpanpan23/p/4737456.html
Copyright © 2011-2022 走看看