
Author: dreams [china]
This example PocketC details on the creation of the database, read and write databases.
Since little information publicly, for example, the primary reference for learners.
This example PocketC details on the creation of the database, read and write databases.
Since little information publicly, for example, the primary reference for learners.
- Code: Select all
/*************************************************************
PPC database creation and reading and writing sample
Language : PocketC
Creation Date : 2007-10-7
Authors : Dreams(c0der@126.com)
*************************************************************/
#define CEVT_I4 3
#define CEVT_LPWSTR 31
CreateDB(string DBName,int MyType)
{
int DataID;
DataID=dbcreate(DBName,MyType);
if(DataID<=0)
{
putsl("Create Database Failure...");
}
else
{
putsl("Create Database Success...");
dbopen(DataID,"");
putsl("Database Size:"+dbsize(DataID));
}
dbclose();
}
WriteDB(string DBName,string Fields1,string Fields2,string Fields3,int NewRecordID)
{
int RecordID;
dbopen(0,DBName);
/* New Record */
RecordID = dbrecwrite(0,CEVT_I4,1,(int)NewRecordID);
if(RecordID==0)
{
putsl("New Record Failure...");
}
else
{
RecordID = dbrecwrite(RecordID,CEVT_LPWSTR,2,(string)Fields1);
RecordID = dbrecwrite(RecordID,CEVT_LPWSTR,3,(string)Fields2);
RecordID = dbrecwrite(RecordID,CEVT_LPWSTR,4,(string)Fields3);
}
dbclose();
}
ReadDB(string DBName)
{
int Result;
int CurrentRecord;
int Index;
int RecordCount;
int tIndex;
Result = dbopen(0,DBName);
if(Result==0)
{
putsl(DBName+" Open failed...");
return;
}
else
{
RecordCount = dbnrecs(Result);
for(Index=0;Index<RecordCount;Index++)
{
CurrentRecord = dbrecpropcnt();
for(tIndex=0;tIndex<CurrentRecord;tIndex++)
{
if(dbrecproptype(tIndex)==3)
{
putsl("Value:"+dbrecpropval(tIndex)+" Type:CEVT_I4");
}
else if(dbrecproptype(tIndex)==31)
{
putsl("Value:"+dbrecpropval(tIndex)+" Type:CEVT_LPWSTR");;
}
}
dbseek(8,1);
putsl("----------------------");
}
}
Result = dbclose();
}