问题一:生僻字不能插入数据库的问题.我现在用的数据库是MySql5.0,图形界面是MySQL-Front,我有两台电脑.
1,两台电脑上MySql的配置一模一样,数据库编码是GB2312;
2,都有一个friend的数据库,编码UTF8(Front中鼠标右键属性修改的);
3,friend下面都有一个表users,默认编码也是UTF8;
4,表中都有一个字段,NickName-----`NickName` varchar(64) character set UTF8 NOT NULL,在第一台电脑上,所有的生僻字都可以插入"焗孖埅"等等
在第二台电脑上,所有的生僻字都不能插入,插入的时候显示"SQL execution error #1406.Response from the database:Data too long for column'NickName' at row 1"有人碰到这样的问题么?问题二:不能导入excel时间数据当将mysql数据库中的表导出到Excel表中,如果字段中有timestamp类型的字段的时候,从Excel表中重新导入数据时会发生错误.数据也就不能导入mysql.
例如:mysql表中有"times"字段,数值为"1990-9-19 12:23:45",导出到excel中的时候,没有问题,如果重新导入,就会发生错误.why?百思不得其解...

解决方案 »

  1.   

    1、alter database default charset=utf8;
    2、导入导出的时候加上 fields terminated by " 你的字符。
      

  2.   

    骑着上帝他老婆写程序:您好,我已经将数据库,表,字段都设置成了utf-8;
    update users set name="孖" where id=1;
    仍然提示错误:
    ERROR 1406 <22001>:Data too long for column 'name' at row 1;
    ...
      

  3.   

    只要有生僻字就不可以。而我在另一台电脑上配置安装都是一样的,版本也是一样的mysql就可以存入这些生僻字。
      

  4.   

    两台电脑上的show variables like '%char%';的结果一样吗,检查一下。
      

  5.   

    能够写入生僻字的mysql数据库显示如下:
    character_set_client     gbk
    character_set_connection gbk
    character_set_database   gb2312
    character_set_filesystem binary
    character_set_results    gbk
    character_set_server     gb2312
    character_set_system     utf8
    character_sets_dir       d:\java\MySQL\MySQL Server5.0\share\charsets\不能写入生僻字的:
    character_set_client     gb2312
    character_set_connection gb2312
    character_set_database   gb2312
    character_set_filesystem binary
    character_set_results    gb2312
    character_set_server     gb2312
    character_set_system     utf8
    character_sets_dir       d:\java\MySQL\MySQL Server5.0\share\charsets\我用MySql-front设置了数据库,表和字段的编码都是utf8,怎么会出现这样的差别呢?
      

  6.   

    时间类型用varchar(),性能不会受多大影响的
      

  7.   

    原来不能写入生僻字的mysql数据库,每次需要写入生僻字的时候,首先
    set names gbk;....就可以了.时间类型确实可以用varchar,但是数据库已经建立了.hoho,不好改了.