你这样试试,用文本找开init.sql,然后点另存为,选择字符集为utf8,再用命令运行。

解决方案 »

  1. //添加一条设置编码的语句set names gbk;INSERT TABLE1 VALUES ('中文');
      

  2. 现在是:我用mysql-front添加时,在前面增加一条 set names gb2312,然后运行script.
    在控制台set names gb2312之后可以看到中文记录.但是在控制台set names gb2312之后运行script,却看不到中文了.
      

  3. 要保持字符集一致。
    既然你的init.sql文件用了UTF-8,你后面也要UTF-8,如果你又改用了gb2312的话就会出现乱码。
    首先你先查一查你的数据库用的是什么字符集
    mysql> show variables like "%char%";
    +--------------------------+----------------------------------------------------
    -----+
    | Variable_name            | Value
         |
    +--------------------------+----------------------------------------------------
    -----+
    | character_set_client     | utf8
         |
    | character_set_connection | utf8
         |
    | character_set_database   | utf8
         |
    | character_set_results    | utf8
         |
    | character_set_server     | utf8
         |
    | character_set_system     | utf8
         |
    | character_sets_dir       | C:\Program Files\MySQL\MySQL Server 4.1\share\chars
    ets/ |
    +--------------------------+----------------------------------------------------
    -----+
    7 rows in set (0.12 sec)mysql> show variables like "%coll%";
    +----------------------+-----------------+
    | Variable_name        | Value           |
    +----------------------+-----------------+
    | collation_connection | utf8_general_ci |
    | collation_database   | utf8_general_ci |
    | collation_server     | utf8_general_ci |
    +----------------------+-----------------+
    3 rows in set (0.01 sec)如果你的init.sql文件的字符集跟上面设置的字符集一样就可以不用set names 字符集.要修改字符集的话,打开my.ini把里面的default charset改成你想要的就行了。
      

类似问题 »