C/C++ 操作mysql字符集设置
2013-03-01 22:50
197 查看
Linux下,当我们用mysql c api 去操作mysqldb的时候,默认情况下,程序会以Latin1这种字符集去进行sql操作,这种情况,很可能就会出现乱码,
比如,数据库设置的字符集是utf8, 然后我们通过程序向其中插入一条记录,然后我们去查询的时候,就会出现乱码。
为了解决这个问题,我们可以调用 int mysql_set_character_set(MYSQL *mysql, const char *csname) 这个函数,去对每一个到mysql的连接设置对应字符集,就可以解决乱码问题。例如下代码:
有时候,当我们直接在mysql客户端去进行sql操作的时候,为了解决乱码问题,一般在执行一条sql语句之前,都会执行:set names ***,
这个函数
比如,数据库设置的字符集是utf8, 然后我们通过程序向其中插入一条记录,然后我们去查询的时候,就会出现乱码。
为了解决这个问题,我们可以调用 int mysql_set_character_set(MYSQL *mysql, const char *csname) 这个函数,去对每一个到mysql的连接设置对应字符集,就可以解决乱码问题。例如下代码:
MYSQL mysql; mysql_init(&mysql); if (!mysql_real_connect(&mysql,"host","user","passwd","database",0,NULL,0)) { fprintf(stderr, "Failed to connect to database: Error: %s\n", mysql_error(&mysql)); } if (!mysql_set_character_set(&mysql, "utf8")) { printf("New client character set: %s\n", mysql_character_set_name(&mysql)); }
有时候,当我们直接在mysql客户端去进行sql操作的时候,为了解决乱码问题,一般在执行一条sql语句之前,都会执行:set names ***,
这个函数
mysql_set_character_set() 跟set names *** 这条语句的作用是一样的。
相关文章推荐
- 对MySQL中字符集的相关设置操作的基本教程
- Linux下 C语言 Mysql操作和字符集设置
- 设置mysql字符集的相关操作
- 对MySQL中字符集的相关设置操作的基本教程
- mysql 导入设置字符集
- 连接mysql时设置客户端字符集
- 查看mysql字符集设置
- mysql 常用设置 字符集编码、自动完成(自动提示)、监听外网ip
- Mysql字符集设置
- C/C++中调用api设置mysql连接的编码方式
- Mysql字符集设置
- Mysql字符集设置指南_MySQL教程
- mysql 不能插入中文的解决办法,修改mysql的字符集,操作见蓝色字体部分.doc
- mac 永久设置mysql的默认字符集为utf-8
- XAMPP安装之后,还用装MYSQL吗?怎样以cmd操作MYSQL,怎样进入设置?
- C++操作MySQL
- MYSQL字符集设置,解决乱码问题
- MySQL字符集设置
- c++ 操作mysql
- mysql odbc字符集设置(中文显示乱码)