Class mgr db::TConnection

Материал из ISPWiki
Перейти к: навигация, поиск

Работа с базами данных

Класс mgr_db::TConnection

Представление подключения к базе данных для конкретного потока выполнения (сокр. от Thread Connection)

#include <mgrdb_misc.h> 

Описание:

class mgr_db::TConnection

Реализует логику работы с подключением к базе данных в конкретном потоке выполнения:

  • При попытке получить подключение к БД, поток получит то же подключение, что и при предыдущих запросах (если он явно не освободил его вызовом метода FreeConnection). Ели это первый запрос потока, возвращается подключение из списка неактивных, или создается новое, если неактивных подключений нет
  • Поток получает подключение к БД, которое гарантированно будет использоваться только этим потоком
  • При освобождении используемого потоком подключения к БД, оно возвращается в список неактивных подключений и может быть использовано позже другим потоком

Открытые члены (кратко)

TConnection ( const ConnectionParams & )

Конструктор, принимает параметры подключения


~TConnection ()

Деструктор, освобождает все подключения к БД


Connection * GetConnection ()

Возвращает ссылку на подключение к базе данных, при первом вызове оно будет изъято из списка неактивных подключений, или создано, если список пуст


void FreeConnection ()

Освобождает подключение к БД (возвращает используемое подключение в список неактивных подключений)


QueryPtr Query ( const string &q )

Выполняет запрос к базе данных


std::string EscapeValue ( const string &str )

Выполняет экранирование невалидных для СУБД символов


std::string ConcatValues ( const string &first , const string &second , const string &delim = "" )

Выполняет конкатенацию через разделитель


Connection * operator-> ()

Оператор позволяет обратиться напрямую к методам объекта Connection.


const ConnectionParams & params ()

Возвращает параметры подключения к БД

Выполнение параметризованного запроса к БД

Данные методы обеспечивают выполнение параметризованного запроса к БД и отличаются количеством и представлением параметров. При их выполнении выполнятеся подстановка параметров в параметризированную строку запроса в порядке указания. Параметры обозначаются в строке запроса символом "?" Возвращают объект запроса к БД

Приватные члены (кратко)

Конструкторы

TConnection ( const ConnectionParams & )

Конструктор, принимает параметры подключения

~TConnection ()

Деструктор, освобождает все подключения к БД

Методы

Connection * GetConnection ()

Возвращает ссылку на подключение к базе данных, при первом вызове оно будет изъято из списка неактивных подключений, или создано, если список пуст

void FreeConnection ()

Освобождает подключение к БД (возвращает используемое подключение в список неактивных подключений)

QueryPtr Query ( const string &q )

Данная функция/метод является inline функцией

Выполняет запрос к базе данных

std::string EscapeValue ( const string &str )

Данная функция/метод является inline функцией

Выполняет экранирование невалидных для СУБД символов

std::string ConcatValues ( const string &first , const string &second , const string &delim = "" )

Данная функция/метод является inline функцией

Выполняет конкатенацию через разделитель

Connection * operator-> ()

Данная функция/метод является inline функцией

Оператор позволяет обратиться напрямую к методам объекта Connection.

const ConnectionParams &params ()

Данная функция/метод является inline функцией

Возвращает параметры подключения к БД