VS中建立空项目使用ODBC连接时,SQLConnect函数总是返回-1,mysql和命令行连接数据库都是没问题的

retcode = SQLConnect(hdbc, (SQLCHAR*)"test", SQL_NTS, (SQLCHAR*)"root", SQL_NTS, (SQLCHAR*)"", SQL_NTS);

原来因为我的mysql是安装的64位的,在ODBC设置的也是64位,然后vs中编译器是32位,所以将编译改成64位就好,如图:

在DEBUG右边这里的x86,点开

选择配置管理器,进入,在平台那里改成x64就好

更改完成后,再次编译,系统出现了”"SQLCHAR *" 类型的实参与 "SQLWCHAR *" 类型的形参不兼容“报错(¬︿̫̿¬☆)

这个问题的解决方法是:

在调试--属性--常规--字符集那里,设置成多字节字符集就好

这一步更改完毕,再次调试运行,调试成功,sqlconnect也返回0.

成功