MySQL这个数据库非常优秀,但是在字符集这块上有点小麻烦。它不像其他数据会自动适应字符的字符编码(UTF-8,GB2132),必须你手动的设置写入数据库的是当前你写入数据库的字符集是啥?当然数据库与表这些对象有自己默认的字符集。
MySQL有自己的设置字符集的SQL语句:SET names 'utf8'如果你写SQL语句的方式读写数据库,在操作前使用这二个命令数据库就把你当前的字符串以你设置的字符集方式。
这种办法是有缺陷,比如通过其他方式操作数据库。我在使用DATASET对象进行操作数据库时上述方法就不行。找到比较好的办法在连接字符串里做文章。
MySqlConnection conn = new MySqlConnection("server=127.0.0.1;uid=myzjema;pwd=z2j0e0m9a;database=ctccinterfacedb;allow zero datetime=true;charset=utf8"
看看最后一条字符串。直接设置了字符集。只要在这个conn里的所有操作都OK了。完美解决。