insert into table1 select * from table2
----------------
table2中这样的数据:
┽╁變∷態╀╀
(_少①點ㄣ壞插入到table1中之后变成:
┽╁
(_少①character set;gb2312
collation:gb2312_bin如果两个表的
collation:gb2312_chinese_ci
不会有问题.
应该不是截断的问题..
字符足够长
----------------
table2中这样的数据:
┽╁變∷態╀╀
(_少①點ㄣ壞插入到table1中之后变成:
┽╁
(_少①character set;gb2312
collation:gb2312_bin如果两个表的
collation:gb2312_chinese_ci
不会有问题.
应该不是截断的问题..
字符足够长
show variables like 'coll%';show create table table1;
show create table table2;贴出来看一下字符集设置。
(_少①點ㄣ壞这两个字符串根本是不 gb2312 的。gb2312是中国大陆简体字符集。
`id` int(4) unsigned NOT NULL auto_increment,
`type` int(4) unsigned NOT NULL default '0',
`Value1` bigint(8) NOT NULL default '0',
`value2` bigint(8) unsigned default '0',
`Value3` int(4) NOT NULL default '0',
`Value4` int(4) NOT NULL default '0',
`Obj_id` int(4) NOT NULL default '0',
`datastr` varchar(100) NOT NULL default '',
`User_id` int(4) unsigned NOT NULL default '0',
`User_name` varchar(100) NOT NULL default '',
PRIMARY KEY (`id`),
UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=gb2312CREATE TABLE `st_tgpm_user_temp` (
`id` int(11) unsigned NOT NULL auto_increment,
`userid` int(11) unsigned default NULL,
`name` varchar(50) character set gb2312 collate gb2312_bin default NULL,
`ftime` int(11) unsigned default NULL,
`taskcount` int(11) unsigned default NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=gb2312
collation_connection gb2312_chinese_ci
collation_database gb2312_chinese_ci
collation_server gb2312_chinese_ci
Variable_name Value
character_set_client gb2312
character_set_connection gb2312
character_set_database gb2312
character_set_results gb2312
character_set_server gb2312
character_set_system utf8
character_sets_dir D:\Program Files\MySQL\MySQL Server 4.1\share\charsets/
注:出问题的是
name------->user_name
select hex(name) from st_tgpm_user_temp;
select hex(name) from st_tgpm_user_temp;
A9E1A9E5D783A1CB9142A9E4A9E4
----------------------------------得出结果,是gb2312的