MySQL ODBC 访问编码问题手记

在 VB6 这样的老编程软件中通过 ODBC 访问 MySQL 数据库,不管服务器上数据库用的 UTF8 或者 GBK,测试发现客户端必须设置为gbk才能正常显示汉字:

如果数据字段中可能含有其他语种,则需要做以下设置:

1、服务器端数据表需要用 uft8 编码,才能容纳其他语种文字:

2、客户端用 MySQL ODBC 的 Unicode 版本驱动,ANSI 版本仅能显示中文简繁体,无法显示其他语种文字:

测试结果如下:

图为使用 VB6 的 adodc 控件及 datagrid 控件。

时间: 2024-10-07 06:47:05

MySQL ODBC 访问编码问题手记的相关文章

mysql的安装、C++访问mysql数据库、编码设置问题

一.mysql的安装,这个相对简单,直接去官网下载mysql安装程序,就可以完成安装过程,网上有很多安装教程,这个没什么注意事项. 二.C++访问mysql,主要是用到mysql定义的头文件,内部定义了各种数据结构和函数,比如MYSQL,MYSQL_RES,MYSQL_ROW,mysql_real_connect等等一系列的结构和函数.这里要注意的就是将头文件及lib文件以及dll文件配置到当前开发环境来进行访问mysql数据库. 以最新的vs2013作为示例说一下配置过程.为了写的清晰点,在网

PHP & MySQL & Apache统一编码

PHP & MySQL & Apache统一编码 在用PHP与MySQL中的数据库交互的时候,老是碰到乱码问题.要么是从数据库读出的数据乱码,要么是无法存入数据库,神烦. 最初的默认编码格式是latin1的,当时就是读出的时候变乱码了( ╯□╰ ),之后把它修改为gbk的,存入的时候还是有问题.百度之,遂决定统一编码~ 这里以统一utf8编码为例: 环境:MySQL5.5,Apache2.4,PHP5.6,操作系统Windows MySQL统一编码 这两句是查看MySQL当前编码格式的语句

MySQL ODBC创建

一. 创建MySQL ODBC: 1. 开始菜单=>控制面板=>管理工具: 注意: 1). Data Source Name:就是以后代码访问ODBC的名字.具体使用参考以后分析. 2). TCP/IP Server: 如果有数据库服务器,请输入服务器IP,如果是本机请输入:127.0.0.1 3). Port:默认是3306(但是在安装MySQL的时候可能会有变化) 4). User:root(My SQL的账号) 5). Password:是登陆MySQL的密码 6. DataBase:

mysql查看数据库编码

MySQL的默认编码是Latin1,不支持中文,要支持中午需要把数据库的默认编码修改为gbk或者utf8. 1.需要以root用户身份登陆才可以查看数据库编码方式(以root用户身份登陆的命令为:>mysql -u root –p,之后两次输入root用户的密码),查看数据库的编码方式命令为: >show variables like 'character%';+--------------------------+----------------------------+| Variable

mysql数据库字符编码修改

mysql数据库字符编码修改 修改数据库的字符集mysql>use mydb mysql>alter database mydb character set utf8; 创建数据库指定数据库的字符集 mysql>create database mydb character set utf8; 通过MySQL命令行修改: mysql> set character_set_client=utf8;Query OK, 0 rows affected (0.00 sec) mysql>

Mysql ODBC 5.1 Driver免安装脚本

在使用Mysql 的时候,需要使用ODBC数据源的方式来连接mysql,所以常常需要用到免安装的驱动,自己参考官网的脚本, 修改了一个实用点的脚本,放出来大家一起分享: 安装mysql odbc 5.1 Driver [cpp] view plain copy @ECHO OFF SET installdir=none IF EXIST %windir%/system/nul   SET installdir=%windir%/system IF EXIST %windir%/system32/

【Mysql数据库访问利器】phpMyadmin

缘由 我们程序员难免要和数据库打交道,经过这几年的锻炼,感觉手写SQL语句已经忘记的差不错了,促使我一定要这篇文章的原因是,有一次晚上我更新某个系统的数据库的表(由于目前公司比较严格,数据库都只能通过命令行访问,无法通过GUI工具操作),然后由于where 条件写错了,然后数据更新错了不少.痛定思痛:用好的工具来避免这种情况,那就是phpMyadmin phpMyadmin phpMyAdmin是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用

/var/lib/mysql 的访问权限问题 Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

mysql 登录不进去 提示Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) shell> chown -R 777/var/lib/mysql 接着启动服务器 shell> /etc/init.d/mysql start 服务器正常启动后察看 /var/lib/mysql 自动生成mysql.sock文件 成功开启进入mysql /var/lib/mysql 的访问权限问题 C

PHP、MySQL、浏览器编码不统一的情况下如何保证正常解析?

最理想的情况是,把三者编码都统一成gbk或者utf-8,这样解析就一切正常.但如何不统一呢? 比如: --PHP的编码是utf-8 --MySQL的编码是utf-8 --浏览器的编码是gbk 这时,只要考虑PHP和浏览器之间即可,因为PHP和MySQL的编码是一致的,可以不考虑.而如何告诉浏览器,PHP返回给浏览器的东西是用utf-8,请用utf-8解析? 答案: (1)方法之一就是我们在PHP中用的那个header函数.header("Content-type:text/html;charse