mysqlデータベースの接続に失敗しました

1195 ワード

今日の午前中にテストプログラムを書いてmysqlデータベースに接続します.結果はいつも報告します.
 unresolved external symbol _mysql_init@4 referenced in function _main
mysq_が見つかりませんinit()関数、すなわちlibmysql.libライブラリにはリンクされていません.
しかし、私はすでにネット上の方法で正しく設定しました.ここでは説明しません.リンクは次のとおりです.
リンク1リンク2
コードも簡単ですが、接続データベースをテストするだけです.
#include <iostream>
#include <Windows.h>
#include <winsock.h>
#include <mysql.h>

using namespace std;

#pragma comment(lib, "libmysql.lib")
//#pragma comment(lib,"mysqlclient.lib")
int main()
{
	MYSQL m_sql;
	
	mysql_init(&m_sql);
	//if (! mysql_real_connect(&m_sql, "localhost", "root", 
	//	"", "test", 3306,	 NULL, 0))
	//{
	//	cout << "connect the database failed ." << endl;
	//	return 0;
	//} else
	//{
	//	cout << "connect success" << endl;
	//	mysql_close(&m_sql);
	//}

	return 0;
}

しかし、なぜ間違いを報告するのでしょうか.後で同僚を探してやっと解決した.私は64 bitのmysqlデータベースをインストールしていました.私のプログラムは32 bitです.自然にリンクできなくなった. 
注意:mysqlのインストールパッケージは32 bitと64 bitを同時にサポートしています.システムが64 bitの場合、デフォルトでは64 bitがインストールされます.だから32 bitプログラムを書きたいなら、インストール中に32 bitの設定をしなければなりません.