CBookDb Class Reference

List of all members.

Public Member Functions

 ~CBookDb ()
TInt OpenDb (const TFileName &aExistingBookFile)
TInt CreateDb (const TFileName &aNewBookFile)
TInt RemoveDb (const TFileName &aExistingBookFile)
TInt Close ()
TBool IsOpen () const
TInt AddBookWithSql (const TDesC &aAuthor, const TDesC &aTitle, const TDesC &aDescription)
TInt AddBookWithCppApiL (const TDesC &aAuthor, const TDesC &aTitle, const TDesC &aDescription)
CDesCArrayFlat * GetAllBooksL ()
CDesCArrayFlat * GetBooksByKeyL (const TDesC &aColumnName, const TDesC &aSearchString)
TInt GetABookFast (const TDesC &aTitle, TDes &aResult)
TInt RemoveBooks (const TDesC &aTitle, TInt &aResultCount)
TInt RemoveAllBooks (TInt &aResultCount)
TInt UpdateBookTitle (const TDesC &aOldTitleKey, const TDesC &aNewTitle)
CDesCArrayFlat * ColumnNamesAndSizesL ()
TInt HasDateColumn (TBool &aReturnValue)
TInt AddDateColumn ()
TInt RemoveDateColumn ()

Static Public Member Functions

static CBookDbNewL ()

Detailed Description

Class: CBookDb

Description: An instance of class CBookDb provides simple Book database access: creating & manipulating Book database files and database entries (books).

Database definition:

The Book contains one table as follows:

Table name: Books Column: Type: Max length: ------ ----- ----------- Author EDbColText 50 (using default) Title EDbColText 60 (see KTitleMaxLength) Description EDbColLongText 128 (see KDescriptionMaxLength) In run time: PublishDate EDbColDateTime

Note that underlying database allows description to be up to 2GB long, but this engine limits the size to 128 unicode characters. The PublishDate does not exist, when the database is created. It can be added on the fly (see AddDateColumnL method).

There is also index for Books table with name "BooksIndex". It consists of two columns:

Author, Title

Index provides quick find.

Definition at line 99 of file DBMSEngine.h.


Constructor & Destructor Documentation

CBookDb::~CBookDb (  ) 

Member Function Documentation

CBookDb * CBookDb::NewL (  )  [static]
TInt CBookDb::OpenDb ( const TFileName &  aExistingBookFile  ) 
TInt CBookDb::CreateDb ( const TFileName &  aNewBookFile  ) 
TInt CBookDb::RemoveDb ( const TFileName &  aExistingBookFile  ) 
TInt CBookDb::Close (  ) 
TBool CBookDb::IsOpen (  )  const
TInt CBookDb::AddBookWithSql ( const TDesC &  aAuthor,
const TDesC &  aTitle,
const TDesC &  aDescription 
)
TInt CBookDb::AddBookWithCppApiL ( const TDesC &  aAuthor,
const TDesC &  aTitle,
const TDesC &  aDescription 
)
CDesCArrayFlat * CBookDb::GetAllBooksL (  ) 
CDesCArrayFlat * CBookDb::GetBooksByKeyL ( const TDesC &  aColumnName,
const TDesC &  aSearchString 
)
TInt CBookDb::GetABookFast ( const TDesC &  aTitle,
TDes &  aResult 
)
TInt CBookDb::RemoveBooks ( const TDesC &  aTitle,
TInt &  aResultCount 
)
TInt CBookDb::RemoveAllBooks ( TInt &  aResultCount  ) 
TInt CBookDb::UpdateBookTitle ( const TDesC &  aOldTitleKey,
const TDesC &  aNewTitle 
)
CDesCArrayFlat * CBookDb::ColumnNamesAndSizesL (  ) 
TInt CBookDb::HasDateColumn ( TBool &  aReturnValue  ) 
TInt CBookDb::AddDateColumn (  ) 
TInt CBookDb::RemoveDateColumn (  ) 

Generated by  doxygen 1.6.2