SQLiteCommand.h:
#pragma once
#include <Windows.h>
#include <map>
#include <vector>
#include "sqlite3.h"
class SQLiteCommand
{
public:
SQLiteCommand();
~SQLiteCommand();
bool Connect( LPCSTR pDataBaseName );
bool Disconnect();
bool IsExistsTable( LPCSTR pTableName );
//for creating table.
/* eg.
SQLiteCommand SQLite;
......
if( false == SQLite.IsExistsTable( "player" ) )//if table player already exists CreateTable will be returned false.
{
SQLite.CreateTable( "player", "id int,name varchar( 16 )" );
}
*/
bool CreateTable( LPCSTR pTableName, LPCSTR pFieldScript );
//eg. SelectTable( "player", "id,name", "id > 10", "id ASC" )
bool SelectTable( LPCSTR pTableName, LPCSTR pSelectField = "*", LPCSTR pWhere = "", LPCSTR pOrder = "" );
/* extends select had not been implemented yet.
bool SelectTable();//pure script version.
bool LeftJoinTable();
bool RightJoinTable();
bool InnerJoinTable();
*/
bool InsertTable( LPCSTR pTableName, LPCSTR pInsertField, LPCSTR pInsertValue );
bool UpdateTable( LPCSTR pTableName, LPCSTR pSetField, LPCSTR pWhere = "" );
bool DeleteTable( LPCSTR pTableName, LPCSTR pWhere = "" );
bool DropTable( LPCSTR pTableName );
//
//only to provide a detailed query for the method of the select table.
/* eg.
SQLiteCommand SQLite;
......
SQLite.SelectTable( "player", "id,name", "id > 10" ); //select id,name from player where id > 10
//the cursor is at the top of the default.
while( false == SQLite.IsEOF() )
{
INT id = atoi( GetField( "id" ) );
LPCSTR name = GetField( "name" );
SQLite.MoveNext();
}
//or cursor position in the en