mysql用select语句好像不能辨别全角半角,不知道要怎么设置?
select * from tablename where filename='(新建文件夹)'
全角和半角的括号都出来了:
'(新建文件夹)'
'(新建文件夹)'
第一条的括号是半角,第二条是全角的
我是这样创建表的: wxString sql(wxString::Format(wxT("create table IF Not EXISTS %s (filename varchar(255) PRIMARY KEY, length varchar(30), lmtime_ticks datetime collate utf8_unicode_ci default NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;"), m_tablename.c_str()));

解决方案 »

  1.   

    检查一下使用的什么字符集。
    http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/12/4174186.aspx
    MySQL 中文显示乱码
      

  2.   

    不是。这种情况太少见了、
    你为什么要让mysql区分全与半啊?
      

  3.   

    因为我要设置这个字段为主键,之前的人没给设置主键,这个字段是一个文件名,不能重复的
    ,但是表已经有数据了,我用mysql工具查询出来发现有全角和半角的,提示设置不了主键
      

  4.   

    将此字段修改为varbinary类型,
    OR
    用REPLACE将全角->半角