ROOT logo
// @(#)root/sqlite:$Id$
// Author: o.freyermuth <o.f@cern.ch>, 01/06/2013

/*************************************************************************
 * Copyright (C) 1995-2013, Rene Brun and Fons Rademakers.               *
 * All rights reserved.                                                  *
 *                                                                       *
 * For the licensing terms see $ROOTSYS/LICENSE.                         *
 * For the list of contributors see $ROOTSYS/README/CREDITS.             *
 *************************************************************************/

#ifndef ROOT_TSQLiteServer
#define ROOT_TSQLiteServer

#ifndef ROOT_TSQLServer
#include "TSQLServer.h"
#endif

#if !defined(__CINT__)
#include <sqlite3.h>
#else
struct sqlite3;
#endif



class TSQLiteServer : public TSQLServer {

 private:
   TString   fSrvInfo;   // Server info string
   sqlite3  *fSQLite;    // connection to SQLite DB

 public:
   TSQLiteServer(const char *db, const char *uid=NULL, const char *pw=NULL);
   ~TSQLiteServer();

   void           Close(Option_t *opt="");
   Bool_t         StartTransaction();
   TSQLResult    *Query(const char *sql);
   Bool_t         Exec(const char *sql);
   TSQLStatement *Statement(const char *sql, Int_t = 100);
   Bool_t         HasStatement() const;
   Int_t          SelectDataBase(const char *dbname);
   TSQLResult    *GetDataBases(const char *wild = 0);
   TSQLResult    *GetTables(const char *dbname, const char *wild = 0);
   TSQLResult    *GetColumns(const char *dbname, const char *table, const char *wild = 0);
   TSQLTableInfo *GetTableInfo(const char* tablename);
   Int_t          CreateDataBase(const char *dbname);
   Int_t          DropDataBase(const char *dbname);
   Int_t          Reload();
   Int_t          Shutdown();
   const char    *ServerInfo();

   ClassDef(TSQLiteServer,0);  // Connection to SQLite DB
};

#endif
 TSQLiteServer.h:1
 TSQLiteServer.h:2
 TSQLiteServer.h:3
 TSQLiteServer.h:4
 TSQLiteServer.h:5
 TSQLiteServer.h:6
 TSQLiteServer.h:7
 TSQLiteServer.h:8
 TSQLiteServer.h:9
 TSQLiteServer.h:10
 TSQLiteServer.h:11
 TSQLiteServer.h:12
 TSQLiteServer.h:13
 TSQLiteServer.h:14
 TSQLiteServer.h:15
 TSQLiteServer.h:16
 TSQLiteServer.h:17
 TSQLiteServer.h:18
 TSQLiteServer.h:19
 TSQLiteServer.h:20
 TSQLiteServer.h:21
 TSQLiteServer.h:22
 TSQLiteServer.h:23
 TSQLiteServer.h:24
 TSQLiteServer.h:25
 TSQLiteServer.h:26
 TSQLiteServer.h:27
 TSQLiteServer.h:28
 TSQLiteServer.h:29
 TSQLiteServer.h:30
 TSQLiteServer.h:31
 TSQLiteServer.h:32
 TSQLiteServer.h:33
 TSQLiteServer.h:34
 TSQLiteServer.h:35
 TSQLiteServer.h:36
 TSQLiteServer.h:37
 TSQLiteServer.h:38
 TSQLiteServer.h:39
 TSQLiteServer.h:40
 TSQLiteServer.h:41
 TSQLiteServer.h:42
 TSQLiteServer.h:43
 TSQLiteServer.h:44
 TSQLiteServer.h:45
 TSQLiteServer.h:46
 TSQLiteServer.h:47
 TSQLiteServer.h:48
 TSQLiteServer.h:49
 TSQLiteServer.h:50
 TSQLiteServer.h:51
 TSQLiteServer.h:52
 TSQLiteServer.h:53
 TSQLiteServer.h:54
 TSQLiteServer.h:55
 TSQLiteServer.h:56
 TSQLiteServer.h:57