Какие средства используются в C++ для работы с базами данных?
От: RussianFellow Россия http://russianfellow.livejournal.com
Дата: 14.02.17 09:11
Оценка:
Какие средства используются в C++ для работы с базами данных, помимо ODBC и OLE DB?
1613 г. = 2024 г.
Re: Какие средства используются в C++ для работы с базами данных?
От: Ведмедь Россия  
Дата: 14.02.17 09:13
Оценка:
Здравствуйте, RussianFellow, Вы писали:

RF>Какие средства используются в C++ для работы с базами данных, помимо ODBC и OLE DB?


От базы может зависеть, например для Oracle это OCCI
Да пребудет с тобой Великий Джа
Re: Какие средства используются в C++ для работы с базами данных?
От: Igore Россия  
Дата: 14.02.17 09:41
Оценка:
Здравствуйте, RussianFellow, Вы писали:

RF>Какие средства используются в C++ для работы с базами данных, помимо ODBC и OLE DB?

Зависит от того что используется в проекте и что надо. Можно: soci, qt, odb
Re: Какие средства используются в C++ для работы с базами данных?
От: rm822 Россия  
Дата: 14.02.17 12:20
Оценка:
RF>Какие средства используются в C++ для работы с базами данных, помимо ODBC и OLE DB?
ADO разумеется
Re: Какие средства используются в C++ для работы с базами данных?
От: Кодт Россия  
Дата: 14.02.17 14:09
Оценка:
Здравствуйте, RussianFellow, Вы писали:

RF>Какие средства используются в C++ для работы с базами данных, помимо ODBC и OLE DB?


sqlite
Berkley DB

Или нужны именно клиентские обвязки к SQL-серверам?
Перекуём баги на фичи!
Re: Какие средства используются в C++ для работы с базами да
От: AndrewJD США  
Дата: 14.02.17 14:14
Оценка:
Здравствуйте, RussianFellow, Вы писали:

RF>Какие средства используются в C++ для работы с базами данных, помимо ODBC и OLE DB?


ODBC де-факто стандарт сейчас. OLE DB заброшен и больше не развивается.
"For every complex problem, there is a solution that is simple, neat,
and wrong."
Отредактировано 14.02.2017 15:24 AndrewJD . Предыдущая версия .
Re: Какие средства используются в C++ для работы с базами данных?
От: Ops Россия  
Дата: 14.02.17 15:14
Оценка: +2 :)))
Здравствуйте, RussianFellow, Вы писали:

RF>Какие средства используются в C++ для работы с базами данных, помимо ODBC и OLE DB?


  Учитывая автора поста...
BDE
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[2]: Какие средства используются в C++ для работы с базами данных?
От: gok Россия  
Дата: 14.02.17 15:37
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Здравствуйте, RussianFellow, Вы писали:


RF>>Какие средства используются в C++ для работы с базами данных, помимо ODBC и OLE DB?


К>sqlite

К>Berkley DB

К>Или нужны именно клиентские обвязки к SQL-серверам?

слышал про какие-то адаптеры не зависящие от типа базы, даже с облаками sql обмениваются (?)
gok
Re: Какие средства используются в C++ для работы с базами данных?
От: velkin Удмуртия http://blogs.rsdn.org/effective/
Дата: 14.02.17 15:42
Оценка:
Здравствуйте, RussianFellow, Вы писали:

RF>Какие средства используются в C++ для работы с базами данных, помимо ODBC и OLE DB?


У баз данных есть свои библиотеки, вот через них и работают. Так же есть возможность использовать через плагины унифицирующие операции с ними. Чисто для примера возьмём плагин qt к постгрес:
https://packages.debian.org/ru/sid/libqt4-sql-psql

Этот пакет устанавливает модуль PostgreSQL для Qt 4.
Установите его если собираетесь создавать или использовать приложения Qt4, работающие с базами данных PostgreSQL.


В зависимостях видим:
https://packages.debian.org/ru/sid/libpq5

клиентская С-библиотека для PostgreSQL

libpq -- это C-библиотека, позволяющая пользовательским программам подключаться к серверу баз данных PostgreSQL. Сервер может находиться на другой машине и быть доступен про протоколу TCP/IP. Данная версия libpq совместима с серверами PostgreSQL версии 8.2 и выше.

В пакете содержится библиотека времени выполнения, необходимая для пакетов, использующих libpq.

PostgreSQL -- это объектно-ориентированная реляционная система управления базой данных SQL


Соответственно разработчик для прямого доступа может использовать что-то вроде:
https://packages.debian.org/ru/sid/libpq-dev

header files for libpq5 (PostgreSQL library)

Header files and static library for compiling C programs to link with the libpq library in order to communicate with a PostgreSQL database backend.

PostgreSQL is an object-relational SQL database management system.


Можно так же пройтись по SQLite, MySQL и другим. Это были базы данных SQL, помимо них существуют NoSQL. Ну, для пример, можем взять Memcached. Традиционно добавляем вначало lib, а в конец -dev, получаем libmemcached-dev:
https://packages.debian.org/ru/sid/libmemcached-dev

C and C++ client library to the memcached server (development files)

libmemcached is a C and C++ client library to the memcached server (http://memcached.org/). It has been designed to be light on memory usage, thread safe, and provide full access to server side methods.

A few notes on its design:

* Synchronous and Asynchronous support.
* Access to large object support.
* Local replication.
* TCP and Unix Socket protocols.
* A half dozen or so different tuneable hash algorithms.
* Implementations of the new cas, replace, and append operators.
* Man pages written up on entire API.
* Implements both modulo and consistent hashing solutions.
* Tools to Manage your Memcached networks.

This package provides the development files.

Вообще-то я базы данных напрямую не использую, просто подал идею о том, как искать библиотеки.
Re[2]: Какие средства используются в C++ для работы с базами да
От: pagid Россия  
Дата: 15.02.17 10:51
Оценка:
Здравствуйте, AndrewJD, Вы писали:

AJD>ODBC де-факто стандарт сейчас. OLE DB заброшен и больше не развивается.

ODBC развивается?
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Re: Какие средства используются в C++ для работы с базами данных?
От: AlexGin Беларусь  
Дата: 15.02.17 13:16
Оценка:
Здравствуйте, RussianFellow, Вы писали:

RF>Какие средства используются в C++ для работы с базами данных, помимо ODBC и OLE DB?

Применяются также: ADO и DAO.
Re[3]: Какие средства используются в C++ для работы с базами да
От: AndrewJD США  
Дата: 15.02.17 16:13
Оценка:
Здравствуйте, pagid, Вы писали:

P>ODBC развивается?


Да. Например новые MSSQL драйвера только ODBC.
"For every complex problem, there is a solution that is simple, neat,
and wrong."
Re: Какие средства используются в C++ для работы с базами данных?
От: MasterZiv СССР  
Дата: 16.02.17 12:29
Оценка:
Здравствуйте, RussianFellow, Вы писали:

RF>Какие средства используются в C++ для работы с базами данных, помимо ODBC и OLE DB?



POCO, QT, native CLI API ...
Re[3]: Какие средства используются в C++ для работы с базами
От: AlexGin Беларусь  
Дата: 26.02.17 20:35
Оценка: 2 (1) +1
Здравствуйте, pagid, Вы писали:

P>Здравствуйте, AndrewJD, Вы писали:


AJD>>ODBC де-факто стандарт сейчас. OLE DB заброшен и больше не развивается.

P>ODBC развивается?
OTL — это отличная свободная библиотека для ODBC:
http://otl.sourceforge.net/home.htm

P.S. Эта библиотека развивается постоянно. Вот новости по релизу за 12 Февраля: http://otl.sourceforge.net/otl3_whatn.htm
Уже включили опцию поддержки для C++14 — молодцы!
Отредактировано 26.02.2017 20:40 AlexGin . Предыдущая версия .
Re[4]: Какие средства используются в C++ для работы с базами
От: AndrewJD США  
Дата: 27.02.17 15:31
Оценка:
Здравствуйте, AlexGin, Вы писали:

AG>OTL — это отличная свободная библиотека для ODBC:

AG>http://otl.sourceforge.net/home.htm

AG>P.S. Эта библиотека развивается постоянно. Вот новости по релизу за 12 Февраля: http://otl.sourceforge.net/otl3_whatn.htm

AG>Уже включили опцию поддержки для C++14 — молодцы!

Если нужна обвертка вокуруг ODBC — есть неплохая либа с минимум шлака: nanodbc
"For every complex problem, there is a solution that is simple, neat,
and wrong."
Re[5]: Какие средства используются в C++ для работы с базами
От: AlexGin Беларусь  
Дата: 27.02.17 20:42
Оценка:
Здравствуйте, AndrewJD, Вы писали:

AJD>Здравствуйте, AlexGin, Вы писали:


AG>>OTL — это отличная свободная библиотека для ODBC:

AG>>http://otl.sourceforge.net/home.htm

AG>>P.S. Эта библиотека развивается постоянно. Вот новости по релизу за 12 Февраля: http://otl.sourceforge.net/otl3_whatn.htm

AG>>Уже включили опцию поддержки для C++14 — молодцы!

AJD>Если нужна обвертка вокуруг ODBC — есть неплохая либа с минимум шлака: nanodbc

Спасибо, уважаемый AndrewJD, но я уже несколько лет как применяю OTL — особенно для MFC проектов.
Re[6]: Какие средства используются в C++ для работы с базами
От: gok Россия  
Дата: 01.03.17 15:18
Оценка:
Здравствуйте, AlexGin, Вы писали:

AG>Здравствуйте, AndrewJD, Вы писали:


AJD>>Здравствуйте, AlexGin, Вы писали:


AG>>>OTL — это отличная свободная библиотека для ODBC:

AG>>>http://otl.sourceforge.net/home.htm

AG>>>P.S. Эта библиотека развивается постоянно. Вот новости по релизу за 12 Февраля: http://otl.sourceforge.net/otl3_whatn.htm

AG>>>Уже включили опцию поддержки для C++14 — молодцы!

AJD>>Если нужна обвертка вокуруг ODBC — есть неплохая либа с минимум шлака: nanodbc

AG>Спасибо, уважаемый AndrewJD, но я уже несколько лет как применяю OTL — особенно для MFC проектов.
Несколько в сторону. Пробую OTL: как цепляете Access без DSN? Никакие строки отсюда не помогают.
MS SQL нормально соединяется. Проекты х64 как консольный и MFC c odbc32.lib из C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib\x64
Спасибо!
gok
Отредактировано 01.03.2017 15:22 gok . Предыдущая версия .
Re: Какие средства используются в C++ для работы с базами данных?
От: Коваленко Дмитрий Россия http://www.ibprovider.com
Дата: 02.03.17 05:34
Оценка:
Здравствуйте, RussianFellow, Вы писали:

RF>Какие средства используются в C++ для работы с базами данных, помимо ODBC и OLE DB?


Работать напрямую с OLE DB — это довольно специфическое занятие.

Я использую свою обертку. Как и свой OLE DB провайдер. Ссылка на сайт — в верхнем правом углу

Поскольку обертка была написана во времена BCB3/BCB5, она получилась относительно специфичной. Но тем не менее на ней был написан большой проект для одной местной гос. конторы (сервисы, рабочие места и все такое...). А сейчас на ней пишутся тесты для провайдера (но уже только на VS2010+).

Все ошибки проектирования этой обертки были учтены при создании замены для System.Data.OleDb, с которой реально приятно работать. Но, увы, это для .NET
-- Пользователи не приняли программу. Всех пришлось уничтожить. --
Re[7]: Какие средства используются в C++ для работы с базами
От: AlexGin Беларусь  
Дата: 02.03.17 12:09
Оценка:
Здравствуйте, gok, Вы писали:

gok>Несколько в сторону. Пробую OTL: как цепляете Access без DSN? Никакие строки отсюда не помогают.

MS Access — я нормально цеплял, через тот же ODBC драйвер, (было такое несколько лет назад).
Именно через стандартный ODBC и с созданием соответствующего DSN:

Работа через ODBC — это создание источника данных с соответствующим DSN (Data Source Name).
ЕМНИП имеется такая вот особенность для MS Access:
строки могут быть до 256 символов (возможно, в современных версиях этого ограничения нет).

gok>MS SQL нормально соединяется. Проекты х64 как консольный и MFC c odbc32.lib из C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib\x64

gok>Спасибо!
Наздоровье!

P.S. Если приложение 32-х разрядное, брать администратор ODBC (odbcad32.exe) из папки: C:\Windows\SysWOW64
Отредактировано 02.03.2017 12:20 AlexGin . Предыдущая версия . Еще …
Отредактировано 02.03.2017 12:15 AlexGin . Предыдущая версия .
Re[8]: Какие средства используются в C++ для работы с базами
От: gok Россия  
Дата: 02.03.17 14:50
Оценка:
Здравствуйте, AlexGin, Вы писали:

AG>Здравствуйте, gok, Вы писали:


gok>>Несколько в сторону. Пробую OTL: как цепляете Access без DSN? Никакие строки отсюда не помогают.

AG>MS Access — я нормально цеплял, через тот же ODBC драйвер, (было такое несколько лет назад).
AG>Именно через стандартный ODBC и с созданием соответствующего DSN:
AG>Image: Access_odbc1.jpg
AG>Работа через ODBC — это создание источника данных с соответствующим DSN (Data Source Name).
AG>ЕМНИП имеется такая вот особенность для MS Access:
AG>строки могут быть до 256 символов (возможно, в современных версиях этого ограничения нет).

gok>>MS SQL нормально соединяется. Проекты х64 как консольный и MFC c odbc32.lib из C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib\x64

gok>>Спасибо!
AG> Наздоровье!

AG>P.S. Если приложение 32-х разрядное, брать администратор ODBC (odbcad32.exe) из папки: C:\Windows\SysWOW64

Эх, надеялся OTL может работать без DSN
gok
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.