最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vs如何讀取mysql中的數(shù)據(jù)并解決中文亂碼問題

 更新時(shí)間:2022年09月28日 09:26:26   作者:獜洛橙  
這篇文章主要介紹了vs如何讀取mysql中的數(shù)據(jù)并解決中文亂碼問題,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下

一、在vs中新建一個(gè)工程,然后新建一個(gè)源文件

二、右擊上述圖片中的mysql_test工程名,然后在最下方找到屬性,并點(diǎn)擊

三、點(diǎn)擊VC++目錄,在包含目錄中添加mysql的文件路徑,一般情況下的mysql的默認(rèn)安裝路徑都是在C盤的Program Files下的,找到include路徑,然后點(diǎn)擊確定

四、在C/C++中的常規(guī)選項(xiàng)中,找到附加包含目錄,同時(shí)也將mysql的include路徑包含進(jìn)去 

五、在屬性頁中選擇鏈接器的常規(guī)選項(xiàng),在里面找到附加庫目錄,然后添加mysql的lib路徑

六、 在鏈接器的輸入選項(xiàng)中,找到附加依賴項(xiàng),然后直接寫上libmysql.lib

七、最后再mysql的bin目錄中,將libmysql.dll復(fù)制一份到c:\windows\system32路徑下即可。 八、隨便找一段代碼測試,這里用的是其他人的博客里面的代碼,當(dāng)然有些許是修改了的,這里會(huì)作相應(yīng)介紹。

mysql測試代碼如下:

create database test;
use test;
create table test_1(name varchar(128),age int);
insert into test_1 values('獜洛橙',18);

vs測試代碼如下(要注意修改mysql用戶名和密碼為自己的,同時(shí)還有database的名字和里面的表的名字,我這里用戶名是root,密碼是123456,database是上面mysql測試代碼中的test,表名是test_1):

#include <stdio.h>
#include <WinSock.h>
#include <Windows.h>
#include <mysql.h>
#include<iostream>
using namespace std;
 
MYSQL mysql;  //mysql連接
MYSQL_RES* res; //一個(gè)結(jié)果集結(jié)構(gòu)體   
MYSQL_ROW row; //char** 二維數(shù)組,存放一條條記錄  
 
const char DataBase_UserName[] = "root";    //數(shù)據(jù)庫用戶名username
const char DataBase_Password[] = "123456";   //數(shù)據(jù)庫密碼,填自己的密碼
const char DataBase_Host[] = "localhost";  //數(shù)據(jù)庫連接地址
//注意有時(shí)候使用主機(jī)ip會(huì)報(bào)錯(cuò),此時(shí)可以將ip改為localhost
const char DataBase_Name[] = "test";  //database name
unsigned int DataBase_Port = 3306;            //server port
 
bool ConnectDatabase(); //函數(shù)申明
void FreeConnect();   //釋放資源
 
wchar_t* Utf8_2_Unicode(char* row_i)
{
	int len = MultiByteToWideChar(CP_UTF8, 0, row_i, strlen(row_i), NULL, 0);
	wchar_t* wszStr = new wchar_t[len + 1];
	MultiByteToWideChar(CP_UTF8, 0, row_i, strlen(row_i), wszStr, len);
	wszStr[len] = '\0';
	return wszStr;
}
 
void main()
{
	setlocale(LC_ALL, "chs");
	ConnectDatabase();	//連接數(shù)據(jù)庫
	//查詢數(shù)據(jù)
	mysql_query(&mysql, "SELECT * from test_1");
	//獲取結(jié)果集
	res = mysql_store_result(&mysql);
	//顯示數(shù)據(jù)
	//給ROW賦值,判斷ROW是否為空,不為空就打印數(shù)據(jù)。
	while (row = mysql_fetch_row(res))
	{
		wchar_t* m1 = Utf8_2_Unicode(row[0]);
		wchar_t* m2 = Utf8_2_Unicode(row[1]);
		wprintf_s(L"%s  %s", m1,m2);
	}
	FreeConnect();
	getchar();
}
 
 
bool ConnectDatabase()
{
	//初始化mysql
	mysql_init(&mysql);   //連接mysql,數(shù)據(jù)庫
	//中間分別是主機(jī),用戶名,密碼,數(shù)據(jù)庫名,端口號(hào)(可以寫默認(rèn)0或者3306等),可以先寫成參數(shù)再傳進(jìn)去
	if (!(mysql_real_connect(&mysql, DataBase_Host, DataBase_UserName, DataBase_Password, DataBase_Name, DataBase_Port, NULL, 0))) {
		printf("Error connecting to database:%s\n", mysql_error(&mysql));
		return false;
	}
	else {
		MessageBoxA(NULL, "連接MYSQL數(shù)據(jù)成功!", "消息", MB_OK);
		printf("Connected...\n");
		return true;
	}
}
//釋放資源
void FreeConnect() {
	mysql_close(&mysql);
}

九、如果成功即顯示如下的提示信息框

十、打印結(jié)果(成功顯示)

到此這篇關(guān)于vs如何讀取mysql中的數(shù)據(jù)并解決中文亂碼問題的文章就介紹到這了,更多相關(guān)vs讀取mysql數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

报价| 合江县| 许昌县| 顺昌县| 巴南区| 仁寿县| 新丰县| 库车县| 铜山县| 旺苍县| 志丹县| 红原县| 罗平县| 永吉县| 孙吴县| 依兰县| 德惠市| 扬中市| 和静县| 甘孜| 云和县| 玉山县| 抚顺县| 噶尔县| 河东区| 桓台县| 韶山市| 丹巴县| 永嘉县| 印江| 忻城县| 吉安市| 霍山县| 曲水县| 合水县| 沭阳县| 高阳县| 洛川县| 敦化市| 巴马| 梁平县|