應(yīng)用系統(tǒng)二次開發(fā)中數(shù)據(jù)庫數(shù)據(jù)讀取的捷徑
摘要:應(yīng)用系統(tǒng)的二次開發(fā),一般通過ODBC等數(shù)據(jù)庫驅(qū)動讀取數(shù)據(jù)庫數(shù)據(jù),或者由開發(fā)廠商提供接口API函數(shù)。由于數(shù)據(jù)庫驅(qū)動經(jīng)過了很多中間環(huán)節(jié),而且需要考慮到通用性、兼容性等各個方面,使性能、效率大打折扣;一般
在數(shù)據(jù)處理中心創(chuàng)建共享內(nèi)存:
HANDLE m_hMapObject; //共享內(nèi)存句柄
extern LPVOID lpvMem=NULL; //共享內(nèi)存地址
#define SHMEMSIZE sizeof(Datastru) //共享內(nèi)存空間
m_hMapObject = CreateFileMapping((HANDLE)0xFFFFFFFF,
NULL,
PAGE_READWRITE,
0,
SHMEMSIZE,
“Share_Mem”);
if (m_hMapObject==NULL) return FALSE;//創(chuàng)建共享內(nèi)存失敗
BOOL fInit = (GetLastError()!=ERROR_ALREADY_EXISTS);
lpvMem = MapViewOfFile(m_hMapObject, FILE_MAP_ALL_ACCESS, 0, 0, SHMEMSIZE));
if (lpvMem==NULL) return FALSE;
if (fInit) memset(lpvMem, 0, SHMEMSIZE); //初始化共享內(nèi)存
return TRUE;
2、編寫數(shù)據(jù)庫用戶自定義函數(shù),往共享內(nèi)存寫數(shù)據(jù):
void SQL_API_FN get _data (
SQLUDF_CHAR Station_name [36] ,
SQLUDF_CHAR Line_name [36] ,
SQLUDF_INTEGER *Line_Size ,
SQLUDF_INTEGER *Voltage_Grade,
SQLUDF_CHAR Manager [36],
SQLUDF_ DOUBLE *Voltage _value,
SQLUDF_ DOUBLE *Electricity,)
{
Datastru *data ;
HANDLE m_hMapObject; //共享內(nèi)存句柄
LPVOID lpvMem=NULL; //共享內(nèi)存地址
#define SHMEMSIZE sizeof(Datastru) //共享內(nèi)存空間
m_hMapObject = CreateFileMapping((HANDLE)0xFFFFFFFF,
HANDLE m_hMapObject; //共享內(nèi)存句柄
extern LPVOID lpvMem=NULL; //共享內(nèi)存地址
#define SHMEMSIZE sizeof(Datastru) //共享內(nèi)存空間
m_hMapObject = CreateFileMapping((HANDLE)0xFFFFFFFF,
NULL,
PAGE_READWRITE,
0,
SHMEMSIZE,
“Share_Mem”);
if (m_hMapObject==NULL) return FALSE;//創(chuàng)建共享內(nèi)存失敗
BOOL fInit = (GetLastError()!=ERROR_ALREADY_EXISTS);
lpvMem = MapViewOfFile(m_hMapObject, FILE_MAP_ALL_ACCESS, 0, 0, SHMEMSIZE));
if (lpvMem==NULL) return FALSE;
if (fInit) memset(lpvMem, 0, SHMEMSIZE); //初始化共享內(nèi)存
return TRUE;
2、編寫數(shù)據(jù)庫用戶自定義函數(shù),往共享內(nèi)存寫數(shù)據(jù):
void SQL_API_FN get _data (
SQLUDF_CHAR Station_name [36] ,
SQLUDF_CHAR Line_name [36] ,
SQLUDF_INTEGER *Line_Size ,
SQLUDF_INTEGER *Voltage_Grade,
SQLUDF_CHAR Manager [36],
SQLUDF_ DOUBLE *Voltage _value,
SQLUDF_ DOUBLE *Electricity,)
{
Datastru *data ;
HANDLE m_hMapObject; //共享內(nèi)存句柄
LPVOID lpvMem=NULL; //共享內(nèi)存地址
#define SHMEMSIZE sizeof(Datastru) //共享內(nèi)存空間
m_hMapObject = CreateFileMapping((HANDLE)0xFFFFFFFF,
責(zé)任編輯:和碩涵
免責(zé)聲明:本文僅代表作者個人觀點,與本站無關(guān)。其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)本站證實,對本文以及其中全部或者部分內(nèi)容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實相關(guān)內(nèi)容。
我要收藏
個贊
-
現(xiàn)貨模式下谷電用戶價值再評估
2020-10-10電力現(xiàn)貨市場,電力交易,電力用戶 -
PPT | 高校綜合能源服務(wù)有哪些解決方案?
2020-10-09綜合能源服務(wù),清潔供熱,多能互補(bǔ) -
深度文章 | “十三五”以來電力消費(fèi)增長原因分析及中長期展望
2020-09-27電力需求,用電量,全社會用電量
-
PPT | 高校綜合能源服務(wù)有哪些解決方案?
2020-10-09綜合能源服務(wù),清潔供熱,多能互補(bǔ) -
深度文章 | “十三五”以來電力消費(fèi)增長原因分析及中長期展望
2020-09-27電力需求,用電量,全社會用電量 -
我國電力改革涉及的電價問題
-
電化學(xué)儲能應(yīng)用現(xiàn)狀及對策研究
2019-08-14電化學(xué)儲能應(yīng)用 -
《能源監(jiān)測與評價》——能源系統(tǒng)工程之預(yù)測和規(guī)劃
-
《能源監(jiān)測與評價》——能源系統(tǒng)工程之基本方法
-
貴州職稱論文發(fā)表選擇泛亞,論文發(fā)表有保障
2019-02-20貴州職稱論文發(fā)表 -
《電力設(shè)備管理》雜志首屆全國電力工業(yè) 特約專家征文
2019-01-05電力設(shè)備管理雜志 -
國內(nèi)首座蜂窩型集束煤倉管理創(chuàng)新與實踐
-
人力資源和社會保障部:電線電纜制造工國家職業(yè)技能標(biāo)準(zhǔn)
-
人力資源和社會保障部:變壓器互感器制造工國家職業(yè)技能標(biāo)準(zhǔn)
-
《低壓微電網(wǎng)并網(wǎng)一體化裝置技術(shù)規(guī)范》T/CEC 150
2019-01-02低壓微電網(wǎng)技術(shù)規(guī)范
-
現(xiàn)貨模式下谷電用戶價值再評估
2020-10-10電力現(xiàn)貨市場,電力交易,電力用戶 -
建議收藏 | 中國電價全景圖
2020-09-16電價,全景圖,電力 -
一張圖讀懂我國銷售電價附加
2020-03-05銷售電價附加