溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些

發(fā)布時(shí)間:2022-03-04 11:21:42 來源:億速云 閱讀:336 作者:小新 欄目:開發(fā)技術(shù)

小編給大家分享一下VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

下午開始配置各種環(huán)境,想著VS2019可以配合MySQL一起使用。中間出了不少錯(cuò)誤,晚上九點(diǎn)左右配置成功如下圖所示:

VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些

接下來說說具體步驟:

(1)首先準(zhǔn)備好VS2019和MySQL的軟件,各自官網(wǎng)都有,這里不再贅述;

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

VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些

(3)新建一個(gè)工程后再新建一個(gè)main.cpp文件,為下面的配置環(huán)境做準(zhǔn)備。

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

VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些

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

VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些

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

VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些

 (7)繼續(xù)在屬性頁的鏈接器中,點(diǎn)擊輸入選項(xiàng),將libmysql.lib文件加進(jìn)去,注意的是,只需要拷貝libmysql.lib這個(gè)名稱即可,不需要添加路徑。同樣,這文件也在mydql安裝文件夾中l(wèi)ib目錄下:

VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些

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

VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些

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

 VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些

 VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些

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

#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");
	//注意:參數(shù)一定要對上。
	//第二個(gè)參數(shù)為主機(jī)地址localhost,第三個(gè)參數(shù)為用戶名
	//第四個(gè)參數(shù)為用戶密碼,第五個(gè)參數(shù)為連接的數(shù)據(jù)庫
	//第六個(gè)參數(shù)為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);
	//顯示數(shù)據(jù)
	//給ROW賦值,判斷ROW是否為空,不為空就打印數(shù)據(jù)。
	while (row = mysql_fetch_row(res))
	{
		printf("%s  ", row[0]);//打印ID
		printf("%s  ", row[1]);//打印ID
		cout << endl;
	}
	//釋放結(jié)果集
	mysql_free_result(res);
	//關(guān)閉數(shù)據(jù)庫
	mysql_close(&mysql);
	//停留等待
	getchar();
	system("pause");
	return 0;
}

運(yùn)行過程中,如果出現(xiàn)了如下圖所示的錯(cuò)誤,則需要進(jìn)行排查配置環(huán)境變量的問題。

 VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些

1、項(xiàng)目右鍵屬性,檢查一下VC++目錄配置;

VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些

 2、檢查鏈接器中的輸入選項(xiàng)

VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些

 (3)我把這“l(fā)ibmysql.dll 和 libmysql.lib”文件放在項(xiàng)目里的.cpp文件夾下。

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

一定要注意的是MySQL的參數(shù)不要寫錯(cuò),寫錯(cuò)有時(shí)會出現(xiàn)如下Access denied for user 'ODBC'@'localhost' (using password: NO),可以去mysql的bin目錄下輸入命令:

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

VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些

以上是“VS2019連接MySQL數(shù)據(jù)庫的常見問題有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI