自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Windows Mobile上使用WINCE自帶數(shù)據(jù)庫

數(shù)據(jù)庫 其他數(shù)據(jù)庫 移動開發(fā)
本文將介紹如何在Windows Mobile上使用WINCE自帶數(shù)據(jù)庫,這個數(shù)據(jù)庫比較簡單,具備基本的數(shù)據(jù)庫功能。支持的數(shù)據(jù)類型包括2/4字節(jié)有/無符號整數(shù)、日期時間、Unicode字符串、CEBLOB、布爾和8字節(jié)有符號值。

通過數(shù)據(jù)庫,可以方便地存儲和檢索數(shù)據(jù),極大地提高工作效率。在Windows CE .NET 4.2上,自帶了一個數(shù)據(jù)庫,具體我們可以參考MSDN上的網(wǎng)頁:Microsoft Windows CE .NET 4.2 Database Reference。由于它最多只支持4種排序索引,這種數(shù)據(jù)庫適合存儲的數(shù)據(jù)量較小、數(shù)據(jù)結(jié)構(gòu)相對簡單的情況。它支持的數(shù)據(jù)類型包括2/4字節(jié)有/無符號整數(shù)、日期時間、Unicode字符串、CEBLOB、布爾和8字節(jié)有符號值。

數(shù)據(jù)庫的主要操作包括以下幾個方面:

裝配數(shù)據(jù)庫卷:BOOL CeMountDBVol( PCEGUID pceguid, LPWSTR lpszDBVol,DWORD dwFlags);

 

卸載數(shù)據(jù)庫卷:BOOL CeUnmountDBVol(PCEGUID pceguid);

創(chuàng)建數(shù)據(jù)庫:CEOID CeCreateDatabaseEx( PCEGUID pceguid, CEDBASEINFO *lpCEDBInfo);

打開數(shù)據(jù)庫: HANDLE CeOpenDatabaseEx( PCEGUID pceguid, PCEOID poid,LPWSTR lpszName,

CEPROPID propid, DWORD dwFlags,CENOTIFYREQUEST *pReq);

寫數(shù)據(jù)庫: CEOID CeWriteRecordProps(HANDLE hDbase, CEOID oidRecord,

WORD cPropID, CEPROPVAL *rgPropVal),

 

 

讀數(shù)據(jù)庫: CEOID CeReadRecordPropsEx( HANDLE hDbase, DWORD dwFlags,LPWORD lpcPropID,

CEPROPID *rgPropID, LPBYTE *lplpBuffer,LPDWORD lpcbBuffer, HANDLE hHeap);

刪除記錄:BOOL CeDeleteRecord(HANDLE hDatabase, CEOID oidRecord);

移動指針:CEOID CeSeekDatabaseEx(HANDLE hDatabase,DWORD dwSeekType,

DWORD dwValue, WORD wNumVals, LPDWORD lpdwIndex);

使用方法

1.首先在主對話框的頭文件中(這里我們建立了一個基于對話框的工程),我們來聲明部分變量,用于存儲數(shù)據(jù)庫文件名和數(shù)據(jù)庫名;定義一個數(shù)據(jù)庫表結(jié)構(gòu);以及人員信息庫的字段標(biāo)識,我們通過MAKELONG宏來組合字段數(shù)據(jù)庫類型和標(biāo)識。相關(guān)代碼如下:

Code
//定義數(shù)據(jù)庫文件名
const LPTSTR DBFILENAME = _T("\\My Documents\\Workerinfo.db");

 

//定義數(shù)據(jù)庫名
const LPTSTR DBTABLENAME = _T("Worker");

//定義員工數(shù)據(jù)庫表結(jié)構(gòu)
typedef struct{

TCHARszID[10];//子機(jī)ID號

TCHARszName[20]; //員工姓名

TCHAR szWorkNum[10]; //工號

TCHAR szDepartment[20]; //部門號

}REC_WORKER,*PREC_WORKER;

//定義子機(jī)ID號字段標(biāo)志
#define PID_NOMAKELONG(CEVT_LPWSTR,1)

//定義員工姓名字段標(biāo)志
#define PID_NAMEMAKELONG(CEVT_LPWSTR,2)

//定義工號字段標(biāo)志
#define PID_WorkNumMAKELONG(CEVT_LPWSTR,3)

//定義員工部門字段標(biāo)志
#define PID_DepartmentMAKELONG(CEVT_LPWSTR,4)

2.為主對話框添加三個私有成員變量,用于存儲庫文件卷標(biāo)識、數(shù)據(jù)庫句柄以及數(shù)據(jù)庫對象標(biāo)識。代碼片斷如下:

private:
CEGUID m_ceGuid; //存儲數(shù)據(jù)庫文件標(biāo)志

HANDLE m_hDB;//存儲數(shù)據(jù)庫句柄

CEOID m_ceOid;//存儲數(shù)據(jù)庫對象標(biāo)志

3.在主對話框中給出裝配數(shù)據(jù)庫卷、卸載數(shù)據(jù)庫卷、創(chuàng)建數(shù)據(jù)庫、打開數(shù)據(jù)庫、寫數(shù)據(jù)庫、讀數(shù)據(jù)庫、關(guān)閉數(shù)據(jù)庫等等操作。這里就不羅列了。

實例工程是一個WM6平臺上的WINCE數(shù)據(jù)庫,基于對話框的應(yīng)用程序,程序運(yùn)行效果如下圖所示:

 

圖1:程序運(yùn)行圖

另外,我們可以在設(shè)備的“My Documents”目錄下,找到“Workerinfo.db”文件,正如我們在頭文件中所設(shè)置的路徑,如下圖2所示:

 

圖2:數(shù)據(jù)庫文件的路徑

【編輯推薦】

  1. Windows Mobile 5.0中為開發(fā)人員提供的新功能
  2. 微軟將推出Windows Mobile應(yīng)用軟件商店
  3. 使用Windows Mobile 5.0中的圖片、視頻和照相機(jī)
責(zé)任編輯:彭凡 來源: cnblogs
相關(guān)推薦

2009-06-30 10:48:49

WinCEWindows Mob

2022-01-19 07:32:11

數(shù)據(jù)庫插件IDEA

2010-11-19 10:38:26

Oracle XE自帶

2009-08-14 15:02:09

Visual Stud

2024-11-12 14:48:10

2013-12-30 16:27:43

Windows畫圖工具

2009-09-18 13:28:41

Mobile Sens

2011-03-08 08:49:55

MySQL優(yōu)化單機(jī)

2021-02-19 18:05:23

數(shù)據(jù)庫NoSQLIndexedDB

2010-08-03 14:40:05

DB2數(shù)據(jù)庫

2009-05-17 10:48:19

微軟Windows Mob移動OS

2020-08-25 08:00:18

Python開發(fā)數(shù)據(jù)庫

2022-03-25 09:04:01

Mysql數(shù)據(jù)庫

2023-11-01 15:45:29

DBMPython

2009-12-07 17:42:07

Windows Mob

2009-12-15 15:31:47

2012-05-10 11:34:04

Windows數(shù)據(jù)庫

2010-05-26 09:44:41

MySQL數(shù)據(jù)庫使用

2019-08-15 07:00:54

SQLite數(shù)據(jù)庫內(nèi)存數(shù)據(jù)庫

2017-06-19 08:13:00

Sequel ProMySQL數(shù)據(jù)庫
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號