一个odbc连接mysql程序,在项目属性——使用unicode字符集,返回IM002,不使用就成功连接
相关环境W10 64,VS2015,mysql8.0
相关代码
使用unicode字符集的连接代码如下SQLConnect( hdbc, (SQLWCHAR*)"mysql", SQL_NTS, (SQLWCHAR*)"root", SQL_NTS, (SQLWCHAR*)"123456", SQL_NTS);
不适用unicode字符集的连接代码如下SQLConnect( hdbc, (SQLCHAR*)"mysql", SQL_NTS, (SQLCHAR*)"root", SQL_NTS, (SQLCHAR*)"123456", SQL_NTS)
比较两端代码,区别仅仅在于连接字段的 WCHAR 和 CHAR 的区别,我尝试谷歌,没有得到直接的答案,但是一切都告诉我和字符编码有关
于是我尝试在代码中加入
setlocale(LC_ALL, "");
依然没用。