C MYSQL 資料庫連線池

2021-10-05 11:04:14 字數 2195 閱讀 3713

只需要 db.start(),即可啟動資料庫連線池

直接使用easy_db中的靜態查詢方法

/*返回 string*/

static std::string querystr(const char* sql);

/*返回 boolean*/

static bool queryboolean(const char* sql);

/*返回 int*/

static int queryint(const char* sql);

/*返回 unsigned int*/

static unsigned int queryuint(const char* sql);

/*返回 long*/

static long querylong(const char* sql);

/*返回 unsigned long*/

static unsigned long queryulong(const char* sql);

/*返回 long long*/

static long long queryllong(const char* sql);

/*返回 unsigned long long*/

static unsigned long long queryullong(const char* sql);

/*返回 double*/

static double querydouble(const char* sql);

/*返回 long double*/

static long double queryldouble(const char* sql);

/*返回 float*/

static float queryfloat(const char* sql);

/*返回 map*/

static r_map querymap(const char* sql);

/*返回 list*/

static r_vec_map querylist(const char* sql);

static record querymapr(const char* sql);

static std::vectorquerylistr(const char* sql);

/*分頁查詢*/

static page querypage(int pagenumber, int pagesize, std::string select, std::string sqlexcept);

std::vectorreslist = lpkp::easy_db::querylistr("select * from city where cityname = ?", "成都");
直接使用 easy_db::tx( lambda 表示式 ), 在lamdba表示式中的所有sql**自動巢狀支援事務 示例:

lpkp::easy_db::tx( [=]()->int );
後續將支援更多的事務特性

#include #include "pool.h"

#include "easy_db.h"

#define password ""

using vec_map = std::vector>;

void fuc(int i)

std::cout << std::this_thread::get_id() << " 查詢1000次結束:" << i << std::endl;

}//測試

int main()

//lpkp::easy_db::excute_batch(sqllist);

//事務處理 直接 使用tx 方法,裡面的sql**會自動執行事務,

//一行執行失敗,所有操作都會回退

try); }

catch (lpkp::mysql_exception& e)

//併發測試

/*for (size_t i = 0; i < 98; i++)

for (size_t i = 0; i < 50; i++)

*/ std::this_thread::sleep_for(std::chrono::seconds(50));

}

資料庫連線池 Redis連線池

基本原理 在內部物件池中,維護一定數量的資料庫連線,並對外暴露資料庫連線的獲取和返回方法。如外部使用者可通過getconnection方法獲取資料庫連線,使用完畢後再通過releaseconnection方法將連線返回,注意此時的連線並沒有關閉,而是由連線池管理器 並為下一次使用做好準備。2.作用 ...

資料庫連線池

實現資料連線池,讓系統有更高有執行效率 using system using system.data using system.data.sqlclient using system.collections using system.threading public class dataaccess...

資料庫連線池

資料庫連線池概述 資料庫連線是一種關鍵的有限的昂貴的資源,這一點在多使用者的網頁應用程式中體現得尤為突出。對資料庫連線的管理能顯著影響到整個應用程式的伸縮性和健壯性,影響到程式的效能指標。資料庫連線池正是針對這個問題提出來的。資料庫連線池負責分配 管理和釋放資料庫連線,它允許應用程式重複使用乙個現有...