VS2019連接MySQL數據庫的過程及常見問題總結

今天下午開始配置各種環境,想著VS2019可以配合MySQL一起使用。中間出瞭不少錯誤,晚上九點左右配置成功如下圖所示:

接下來說說具體步驟:

(1)首先準備好VS2019和MySQL的軟件,各自官網都有,這裡不再贅述;

(2)找到MySQL的安裝目錄,如圖,找到這兩個文件夾。

(3)新建一個工程後再新建一個main.cpp文件,為下面的配置環境做準備。

(4)打開項目屬性,點擊VC++目錄,在包含目錄中,將MySQL安裝目錄中的include文件路徑添加到這裡,如下圖所示:

 (5)在屬性頁上,打開C/C++,選擇常規,步驟同上,在附加包含目錄中將MySQL文件中的include文件路徑添加進去;

在這裡插入圖片描述

 (6)繼續在屬性頁上,點開鏈接器選項,點擊常規,將MySQL安裝目錄下的lib路徑拷貝到附加庫目錄中;

在這裡插入圖片描述

 (7)繼續在屬性頁的鏈接器中,點擊輸入選項,將libmysql.lib文件加進去,註意的是,隻需要拷貝libmysql.lib這個名稱即可,不需要添加路徑。同樣,這文件也在mydql安裝文件夾中lib目錄下:

在這裡插入圖片描述

 (8)查看屬性頁上方的平臺,選擇x64,x32可能會出錯

在這裡插入圖片描述

 (9)把MySQL安裝目錄下的bin\libmysql.dll復制到c:\windows\system32下:

 在這裡插入圖片描述

 在這裡插入圖片描述

 這部安裝完成後,可以編寫測試代碼瞭。測試代碼如下:

#include <stdio.h>
#include <iostream>
#include "my_global.h"
#include "mysql.h"
using namespace std;
int main()
{
	cout << "hello world!" << endl;
	MYSQL mysql;
	MYSQL_RES* res;
	MYSQL_ROW row;
	mysql_init(&mysql);
	mysql_options(&mysql, MYSQL_SET_CHARSET_NAME, "gbk");
	//註意:參數一定要對上。
	//第二個參數為主機地址localhost,第三個參數為用戶名
	//第四個參數為用戶密碼,第五個參數為連接的數據庫
	//第六個參數為MySQL的端口號3306
	if (mysql_real_connect(&mysql, "localhost", "root", "123456",
		"myemployees", 3306, NULL, 0) == NULL) 
	{
		cout << (mysql_error(&mysql));
	}
	mysql_query(&mysql, "SELECT * from myemployees.employees");
	res = mysql_store_result(&mysql);
	//顯示數據
	//給ROW賦值,判斷ROW是否為空,不為空就打印數據。
	while (row = mysql_fetch_row(res))
	{
		printf("%s  ", row[0]);//打印ID
		printf("%s  ", row[1]);//打印ID
		cout << endl;
	}
	//釋放結果集
	mysql_free_result(res);
	//關閉數據庫
	mysql_close(&mysql);
	//停留等待
	getchar();
	system("pause");
	return 0;
}

運行過程中,如果出現瞭如下圖所示的錯誤,則需要進行排查配置環境變量的問題。

 

1、項目右鍵屬性,檢查一下VC++目錄配置;

 2、檢查鏈接器中的輸入選項

 (3)我把這“libmysql.dll 和 libmysql.lib”文件放在項目裡的.cpp文件夾下。

這三步可以檢查具體大部分的問題。

一定要註意的是MySQL的參數不要寫錯,寫錯有時會出現如下Access denied for user ‘ODBC’@’localhost’ (using password: NO),可以去mysql的bin目錄下輸入命令:

mysql -u root -p,檢查數據庫用戶名,密碼啥的是否錯誤。正確輸入如下圖所示:

到此這篇關於VS2019連接MySQL數據庫的常見問題總結的文章就介紹到這瞭,更多相關VS2019連接MySQL數據庫內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: