国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

MySQL數據庫接口的VC實現與應用(2)_MySQL

來源:懂視網 責編:小采 時間:2020-11-09 17:43:41
文檔

MySQL數據庫接口的VC實現與應用(2)_MySQL

MySQL數據庫接口的VC實現與應用(2)_MySQL:摘要:MySQL數據庫作為一種網絡數據庫性能十分出色,但其在應用軟件中使用較少。本文將主要探討MySQL提供的兩種數據庫接口 ――(ODBC API和C API)在VC中的應用,并且形成一個類用以封裝C API數據庫接口的功能。關鍵詞:MySQL;數據庫接口;ODBC A
推薦度:
導讀MySQL數據庫接口的VC實現與應用(2)_MySQL:摘要:MySQL數據庫作為一種網絡數據庫性能十分出色,但其在應用軟件中使用較少。本文將主要探討MySQL提供的兩種數據庫接口 ――(ODBC API和C API)在VC中的應用,并且形成一個類用以封裝C API數據庫接口的功能。關鍵詞:MySQL;數據庫接口;ODBC A

摘要:MySQL數據庫作為一種網絡數據庫性能十分出色,但其在應用軟件中使用較少。本文將主要探討MySQL提供的兩種數據庫接口 ――(ODBC API和C API)在VC中的應用,并且形成一個類用以封裝C API數據庫接口的功能。

關鍵詞:MySQL;數據庫接口;ODBC API;C API

3 利用MySQL自帶的C API函數實現數據庫功能調用

  由于各個數據庫之間的差異,它們所提供的數據庫功能也就各有不同。這樣,通過ODBC API就不可能完全擁有所有的數據庫功能,因而影響了程序對數據庫的控制功能,也就不能充分發揮數據庫的能力。并且這種統一的接口還是以損失效能為前提的,這就使數據庫操作時間延長。所以,為了解決以上問題,MySQL的制造商在提供ODBC驅動程序的基礎上,還提供了各種編程環境下的API,其中包括C API。這些API函數很顯然能盡可能地發揮數據庫的能力,并減少數據庫操作的延長時間,但卻使程序的通用性受到嚴重影響。

  MySQL提供了一套C API函數,它由一組函數以及一組用于函數的數據類型組成,這些函數與MySQL 服務器進行通信并訪問數據庫,可以直接操控數據庫,因而顯著地提高了操控效能。

  C API數據類型包括:MYSQL(數據庫連接句柄)、MYSQL_RES(查詢返回結果集)、MYSQL_ROW(行集)、MYSQL_FIELD(字段信息)、MYSQL_FIELD_OFFSET(字段表的偏移量)、my_ulonglong(自定義的無符號整型數)等;C API提供的函數包括:mysql_close()、mysql_connect()、mysql_query()、mysql_store_result()、mysql_init()等,其中mysql_query()最為重要,能完成絕大部分的數據庫操控。

下面將具體討論數據庫操作類CDatabase通過C API的實現以及在VC中的應用。

3.1 CDatabase類的實現

CDatabase類封裝了MySQL數據庫的功能,因此不具備通用性,只能在對MySQL的應用程序中使用。下面將根據C++要求及規范給出CDatabase類的具體結構以及相關簡要介紹:

class CDatabase
{
public:
BOOL UnLockTable(); //解鎖
BOOL LockTable(char* TableName,char* PRIORITY); //加鎖
int Reload(); //重新登陸,非零時返回錯誤信息
char* GetState(); //服務器狀態
char* GetServerInfo(); //服務器信息
int GetProtocolInfo(); //協議信息
char* GetHostInfo(); //主機信息
char * GetClientInfo(); //客戶機信息
char* GetFieldName(int FieldNum); //字段名
BOOL IsEnd(); //是否最后
int DropDB(char *db); //刪除數據庫,非零時返回錯誤信息
void SeekData(int offset); //查找指定數據
int CreateDB(char *db); //創建數據庫,非零時返回錯誤信息
void FreeRecord(); //釋放結果集
unsigned int GetFieldNum(); //得到字段數
BOOL ConnectDB(Database_Param *p); //連接數據庫
MYSQL_ROW GetRecord(); //得到結果(一個記錄)
my_ulonglong GetRowNum(); //得到記錄數
BOOL SelectDB(Data_Param *para); //選擇數據庫
BOOL UpdateRecord(Data_Param *para); //更新記錄
BOOL SelectRecord(Data_Param *para); //選擇記錄
BOOL InsertRecord(Data_Param *para); //插入記錄
BOOL DelRecord(Data_Param *para); //刪除記錄
BOOL SelectAll(Data_Param *para); //選擇所有記錄
char * OutErrors(); //輸出錯誤信息
CDatabase(); //初始化數據庫
virtual ~CDatabase(); //關閉數據庫連接

private:
MYSQL mysql; //數據庫連接句柄
MYSQL_RES *query; //結果集
MYSQL_ROW row; //記錄集
MYSQL_FIELD *field; //字段信息(結構體)
BOOL FindSave(char *str); //查找并保存結果集
};

  通過CDatabase類中定義的這些功能函數,我們可以通過遠程或本機完成對MySQL數據庫的絕大部分操控,并且由于定義了解鎖和加鎖功能,使得應用程序能夠多線程或多進程地訪問數據庫,大大提高了效能。以上函數的具體功能都是通過調用C API函數實現的。

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

MySQL數據庫接口的VC實現與應用(2)_MySQL

MySQL數據庫接口的VC實現與應用(2)_MySQL:摘要:MySQL數據庫作為一種網絡數據庫性能十分出色,但其在應用軟件中使用較少。本文將主要探討MySQL提供的兩種數據庫接口 ――(ODBC API和C API)在VC中的應用,并且形成一個類用以封裝C API數據庫接口的功能。關鍵詞:MySQL;數據庫接口;ODBC A
推薦度:
標簽: 接口 數據庫 vc
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 男女全黄一级带免费 | 日韩亚洲欧美一区噜噜噜 | 自拍偷拍欧美亚洲 | 久久大香香蕉国产免费网vrr | 国产一区二区三区精品视频 | 欧美日本一区二区三区 | 亚洲一区二区综合 | 国产在线播放一区 | 成人精品视频一区二区在线 | 欧美精品亚洲精品日韩专区va | 九九爱精品视频 | 一级毛片一级毛片一级毛片 | 欧美变态人zozo禽交 | 免费h片在线观看 | 999成人精品视频在线 | 国产精品麻豆视频 | 国产成人精品日本亚洲语音1 | 亚洲综合一区二区精品久久 | 精品一区二区三区免费毛片爱 | 日韩视频一区二区三区 | 免费亚洲网站 | 亚洲综合一区二区精品久久 | 亚洲色图欧美一区 | 国产精品资源在线观看 | 亚洲欧美日韩在线一区 | 岛国一区二区 | 久久久毛片 | 亚洲欧美在线综合 | 国产成人精品视频在放 | 亚洲第二页| 欧美日韩视频一区二区三区 | 欧美 国产 日韩 第一页 | 久久久久国产一级毛片高清版 | 亚州激情| 国产在线高清不卡免费播放 | 在线观看免费精品国自产 | 日本精品久久久一区二区三区 | 国产精品视频观看 | 国产精品一区二区在线观看 | 精品国产成人综合久久小说 | 日韩毛片大全 |