《WINCE数据库基本操作.ppt》由会员分享,可在线阅读,更多相关《WINCE数据库基本操作.ppt(14页珍藏版)》请在三一办公上搜索。
1、WINCE数据库操作,1.WINCE下数据库基本操作,1.首先挂载数据库卷,如果存在则打开,如果不存在,重新创建。BOOL CeMountDBVol(PCEGUID pceguid,LPWSTR lpszDBVol,DWORD dwFlags);其中第一个参数是存储数据库文件标识符的结构体,第二个参数为要挂载的数据库文件名,第三个参数为数据库文件挂载的方式。,WINCE下数据库基本操作,紧接着打开数据库HANDLE CeOpenDatabaseEx(PCEGUID pceguid,PCEOID poid,LPWSTR lpszName,CEPROPID propid,DWORD dwFlags
2、,CENOTIFYREQUEST*pReq);第一个参数为数据库文件的标识符;第二个参数为存储数据库的标识符,为了打开数据库,要先把poid赋值为0,然后在传入才能打开数据库;第三个参数为要打开的数据库名;第四个参数一般为0,第五个参数指定数据库激活标志为0,最后一个参数为0.,WINCE下数据库基本操作,函数返回值为:A handle to the open database indicates success.INVALID_HANDLE_VALUE indicates failure.打开数据库没有找到需要的数据库,就创建数据库:CEOID CeCreateDatabaseEx(PCEG
3、UID pceguid,CEDBASEINFO*lpCEDBInfo);第一个参数为数据库文件标识符,第二个参数为要创建的数据库对象(CEDBASEINFO);此函数的返回值为一数据库标识符(CEOID)。如果创建数据库失败,需要卸载数据库卷。,WINCE下数据库基本操作,当创建数据库失败的时候,一定要卸载数据库卷。BOOL CeUnmountDBVol(PCEGUID pceguid);参数就是为要创建的数据库卷。,WINCE数据库基本操作,如何在数据库对象中添加一个记录,此时要用到写数据库操作。CEOID CeWriteRecordProps(HANDLE hDbase,CEOID oid
4、Record,WORD cPropID,CEPROPVAL*rgPropVal);参数hDbase为数据库的句柄标识,参数oidRecord为数据库对象标识,cPropID为要操作的列数,rgPropVal 为数据库操作特定的属性结构体。,WINCE数据库基本操作,CEPROPVAL结构体的用法:typedef struct _CEPROPVAL CEPROPID propid;WORD wLenData;WORD wFlags;CEVALUNION val;CEPROPVAL;其中第一个参数为记录的属性列的ID,第四个参数为记录值的联合体,具体结构如下:typedef union _CEVA
5、LUNION short iVal;USHORT uiVal;long lVal;ULONG ulVal;FILETIME filetime;LPWSTR lpwstr;CEBLOB blob;BOOL boolVal;double dblVal;CEVALUNION;,WINCE数据库基本操作,数据库的指针移动操作:CEOID CeSeekDatabase(HANDLE hDatabase,DWORD dwSeekType,DWORD dwValue,LPDWORD lpdwIndex);其返回值为要搜索的记录的数据库对象标识,其可以辅助完成数据库的读写、数据库修改等各种操作。,WINCE数
6、据库基本操作,如何读取数据库中的内容,此时要用到函数:CEOID CeReadRecordProps(HANDLE hDbase,DWORD dwFlags,LPWORD lpcPropID,CEPROPID*rgPropID,LPBYTE*lplpBuffer,LPDWORD lpcbBuffer);其中lplpBuffer是存储记录的指针。,WINCE数据库基本操作,如何获得数据库对象的详细信息,在这里要用到:BOOL CeOidGetInfoEx(PCEGUID pceguid,CEOID oid,CEOIDINFO*poidInfo);这个函数是为了获得一个挂载的数据库卷的详细信息。其
7、中poidInfo是用来存储数据库记录的详细信息的结构体。可以通过这个结构体获得数据库中记录的数量等等。,WINCE数据库基本操作,在数据库中时常会删除一个记录:BOOL CeDeleteRecord(HANDLE hDatabase,CEOID oidRecord);,WINCE数据库基本操作,当操作完数据库后需要关闭数据库:关闭数据库的操作与打开数据库的操作反;首先要关闭数据库,通过CloseHandle()来关闭数据库,在卸载数据库卷之前还要通过CeFlushDBVol把缓存数据存储到永久介质中,然后再通过CeUnmountDBVol卸载数据库卷。,WINCE数据库基本操作,作业题:编写一学生管理系统的对话框,在对话框上有一列表视图框,可以显示数据库中学生信息,对话框上有打开数据库、增加记录、删除记录、刷新记录、编辑记录的按钮,通过这些按钮可以实现对数据库的增加、删除、编辑功能;有另一学生信息对话框辅助完成上述操作。,