分类:
2008-10-13 16:48:17
在EVC3.0中使用数据库
作者:
Embedded Visual C++3.0是Windows CE上程序的VC开发工具,主要应用在掌上电脑上。
由于掌上电脑上容量较小,所以只有一个简单的数据库引擎。以下就是该数据库引擎的使用方法,仅供大家参考。
一、 定义一些常数:
定义数据的识别码、数据库名和记录属性的识别码。在这里已经没有字段这个东西了。
const DWORD DB_IDENT=12347; const WCHAR DB_NAME[]=L"code"; const WORD PROP_CODE=102;二、 定义数据库变量
CCeDBDatabase m_db;三、打开数据库
BOOL CEP_PPDlg::OpenDB() { CEOID poid; BOOL b; CCeDBProp sort[1]={ CCeDBProp(CCeDBProp::Type_String,PROP_CODE,CCeDBProp::Sort_Ascending) }; //排序属性 if(!(b=CCeDBDatabase::Exists (DB_NAME))) //判断数据库是否存在 { //create database if(!(poid=m_db.Create (DB_NAME,DB_IDENT,1,sort))) return FALSE; } if(!(b=m_db.Open (DB_NAME))) return FALSE; m_bIsConnect=TRUE; return TRUE; }四、读数据
void CEP_PPDlg::ReadDB() { CCeDBRecord rs; CString strCode; //value of code int num=0; num=(int)m_db.GetNumRecords (); //记录条数 for(int i=0;i五、删除数据GetString (); m_list.AddString (strCode); } }
void CEP_PPDlg::DeleteDB() { int num=0; num=(int)m_db.GetNumRecords (); for(int i=0;i六、插入数据 void CEP_PPDlg::InsertDB(int i) { WCHAR wcCode[15]; CCeDBProp props[1]; CString strCode; CCeDBRecord * rs; rs=new CCeDBRecord; m_list.GetText (i,strCode); strCode.TrimRight (); ::swprintf(wcCode,L"%s",strCode); props[0]=CCeDBProp(wcCode,PROP_CODE); rs->AddProps (props,1); m_db.AddRecord (rs); delete rs; }七、关闭数据库BOOL CEP_PPDlg::CloseDB() { return m_db.Close (); }说明:
1、具体内容见程序。
2、数据库主要用到三个类:CCeDBDatabase、CCeDBRecord、CCeDBProp
3、数据库包括若干记录(record),每个记录包括若干属性(Property),没有字段的定义了。
--------------------next---------------------