使用fastinsert作为MySql时,中文单词变为乱码

时间:2014-03-27 08:44:14

标签: mysql matlab

我需要从mysql中的表中读取一些记录,然后写入另一个表。

首先,我使用代码来读取记录:

sql = 'select * ....';
cursor = fetch(exec(conn, sql));

代码可以获取数据,中文字段非常清楚。在此之后,我需要将数据写入另一个表。

cursor{end+1} = 'test';
fastinsert(conn, tablename, colname, cursor);

代码可以将数据写入指定的表。但是中文单词会成为凌乱的代码。我不知道为什么。

还有更多。我试过了:

 1) insert a record using phpmyadmin manually,  and the chinese word is clearly.
 2) change the default character set of mysql to 'utf-8',but the error exists as well

所以,我猜我是否需要在插入之前做一些字符集相关操作。怎么做? : - )

任何建议都会感激不尽!

1 个答案:

答案 0 :(得分:0)

我已经弄明白了这个问题。

1) set the mysql charset utf8
  set names 'utf8'

2) specify the matlab connection charset ''utf8''
  append useUnicode=true&charset=utf8 on the database url