ComSDK
 Указатель Классы Пространства имен Функции Переменные Определения типов Перечисления Элементы перечислений Друзья Группы Страницы
database_backend.h
1 //===========================================================================
2 #ifndef comfrm_DatabaseBackendH
3 #define comfrm_DatabaseBackendH
4 //===========================================================================
5 // Заготовка модуля DatabaseBackend была сгенерирована специальным средством RAD разработки SA2-DE.
6 // Все права защищены. (2015)
7 //
8 // В данном файле представлен исходный текст основного заголовочного файла модуля.
9 //
10 // В данном файле представлен паттерн интерфейса класса.
11 // Описание класса:
12 // Абстрактный класс, описывающий интерфейс Action Item'а
13 // ======================================= //
14 // Параметры новой разработки.
15 // ======================================= //
16 // Имя комплекса: GCAD (gcd)
17 // Имя решения: GCAD_2 (gc3)
18 // Имя проекта: Client (cli)
19 // Полный SID: cligc3
20 // Время создания: 16:26:48
21 // Дата создания: 2012-10-10
22 // ======================================= //
23 // ============================================================================================ //
24 // Параметры ревизии(версии):
25 // ============================================================================================ //
26 // [prd]Period: 10/2015
27 // [aut]Author: Антон Першин
28 // [did]DeveloperID: ap
29 // [pid]ProblemID: 00001
30 // [rvs = did.date.pid]Revision: //#ap.2015-10-10.00001
31 // [dsc]Description: Абстрактный класс, описывающий интерфейс для работы с СУБД
32 // [ccm]CodeComment: rvs.{[s]Start | [e]End | []}{[n]New | [o]Old | [d]Develop}
33 // ============================================================================================ //
34 
35 //========================================================================
36 // ДОПОЛНИТЕЛЬНЫЕ ПОДКЛЮЧЕНИЯ (Типы и модули, необходимые для .h - файла)
37 //------------------------------------------------------------------------
38 #include "libtools.h"
39 #include "sqltable.h"
40 
41 //========================================================================
42 
43 //
44 // Сигнатура функции экспорта бэкэнда СУБД:
45 // extern "C" MAC_DLLEXPORT DatabaseBackend* createDatabaseBackend()
46 //
47 namespace com {
56  namespace db {
63  class MAC_DLLEXPORT DatabaseBackend
64  {
65  public:
66  typedef MAC_DLLEXPORT DatabaseBackend* CreateDatabaseBackend();
67 
69  enum ErrorCode
70  {
71  ecSuccess = 0,
76  };
77 
78  public:
79  virtual ~DatabaseBackend(){}
80 
84  virtual void setDatabaseData(const std::string& p_host, unsigned short p_port, const std::string& p_db) = 0;
85 
89  virtual ErrorCode addConnection(const std::string& p_user, const std::string& p_psw) = 0;
90 
94  virtual bool isConnected(const std::string& p_user) const = 0;
95 
99  virtual void disconnect(const std::string& p_user) = 0;
100 
104  virtual ErrorCode executeRequest(const std::string& p_user, const std::string& p_request, com::sql::SqlTable& o_table) = 0;
105 
109  virtual ErrorCode retrieveTable(const std::string& p_user, const std::string& p_schema, const std::string& p_tableName,
110  com::sql::SqlTable& o_table) = 0;
111  };
112  }
113 }
114 
115 //===========================================================================
116 #endif
117 //===========================================================================
118 
Неизвестная ошибка
Definition: database_backend.h:72
Модель SQL-таблицы
Definition: sqltable.h:132
Не удалось выполнить аутентификацию пользователя
Definition: database_backend.h:75
Не удалось выполнить запрос
Definition: database_backend.h:74
Не удалось построить соединение
Definition: database_backend.h:73
Интерфейс для работы с базой данных СУБД
Definition: database_backend.h:63
ErrorCode
Тип ошибок при работе с СУБД
Definition: database_backend.h:69