mysql資料庫 C 封裝

2021-10-08 05:00:59 字數 2325 閱讀 8157

為什麼要使用mysql資料庫?

設想一下有乙個很大的(如10g)資料,我們不能將之存放在記憶體中,只能夠放在磁碟上,每一次cpu讀取資料都需要進行慢到**的磁碟io操作,那這時使用mysql這種關係型資料庫就顯得尤為重要的。

記住mysql的資料也是存放在磁碟上面的,不過讀取速度更快!

首先將mysql檔案包放到/usr/include目錄下:

注意檔案包中我們需要新增的是這個標頭檔案:mysql.h

注意在編譯時需要加上:mysql_config --cflags --libs

mysql.h:

#pragma once

#include

#include

#include

using

namespace std;

namespace wd;}

// namespace wd

mysql.cpp:

#include

"mysql.h"

namespace wd

} mysql::

~mysql()

}bool mysql::

initdb

(std::string host, std::string user, std::string passwd, std::string db_name,

int port =

3306

)return

true;}

bool mysql::

exesql

(std::string sql)

result =

mysql_store_result

(mysql);if

(result)

for(

int j =

0; j < num_fields; j++

) cout << endl;}}

else

else

}return

true;}

//只查詢乙個字段一行,並存入str中, 如果查詢的不存在,那麼str仍將會為空值

bool mysql::

select_one_sql

(std::string sql, string &str)

result =

mysql_store_result

(mysql);if

(result)

for(

int j =

0; j < num_fields; j++)}

}return

true;}

//查詢多個字段多個行,並存入str中

bool mysql::

select_many_sql

(std::string sql, string &str)

result =

mysql_store_result

(mysql);if

(result)

for(

int j =

0; j < num_fields; j++

) str +

="\n";}

}return

true;}

}// namespace wd

test.cpp:

#include

"mysql.h"

using

namespace wd;

/*g++ test.cpp mysql.cpp `mysql_config --cflags --libs`

*/int

main()

mysql.

exesql

("select * from orders;");

return0;

}

輸出結果

封裝mysql資料庫 mysql資料庫的封裝

資料庫封裝類 import pymysql import json class my databa object def init self,pwd name 表名 user root host localhost port 3306 self.conn pymysql.connect user u...

Koa封裝MySQL資料庫

以下提供乙個node.js封裝的mysql資料庫的方法,歡迎各位碼農複製貼上!首先是封裝的資料庫檔案config.js var mysql require mysql 建立鏈結 function connection connection.connect return connection expo...

C 應用 封裝類訪問 Mysql 資料庫

個人經歷的專案主要都是用 postgresql 或 oracle 資料庫,本文非原創,從他處整理而來。mysql.data.dll using mysql.data.mysqlclient mysqlhelper 的摘要說明 public abstract class mysqlhelper 用現有...