select * from tb1 where uname='cytology_₂';
就这么简单的一个SQL,我复制到命令行里执行的时候却变成了
WINWODS下
mysql> select * from tb1 where uname='cytology_2';
LIUNX下
select * from tb1 where uname='cytology_v(2)'也就是说cytology_₂这个有特殊字符的,在WORD中复制到命令行后,由于字符集的不同,导致进行了转换。
感觉不是MYSQL的字符集的问题,而是操作系统的字符集问题。这个问题怎么解决呀?

解决方案 »

  1.   

    现在我想在命令行里查出uname='cytology_₂'的记录,查不出来。
      

  2.   

    比如下面这样的一个INSERT,在命令行里怎么输入?insert into myt values('table ™ name')
    一粘贴就变成
    insert into myt values('table t name')
      

  3.   

    试试第三方工具吧,在NAVICAT下倒是能粘贴进去table ™ name
      

  4.   

    试试第三方工具吧,在NAVICAT下倒是能粘贴进去table ™ name
      

  5.   

    是的。WIN下的可以。但操作是在LINUX下的呀、
      

  6.   

    版主,用MYSQL自己的命令行工具,在LINUX下,怎么样操作能写入那个特殊字符啊?
      

  7.   

    我不知道你用的是什么发行版的linux,如果是ubuntu,并且locale是utf-8,应该可以支持这类特殊字符的显示。
      

  8.   

    我用的是CENTOS5。4的。晚上在自己机器上测试,是没有问题的。我的locale都是UTF8的。现在基本确定是操作系统的字符集的问题。