Как работать с бд и есть ли для этого отдельные библиотеки?

Ответить

Код подтверждения
Введите код в точности так, как вы его видите. Регистр символов не имеет значения.

BBCode ВКЛЮЧЁН
[img] ВКЛЮЧЁН
[url] ВКЛЮЧЁН
Смайлики ОТКЛЮЧЕНЫ

Обзор темы
   

Развернуть Обзор темы: Как работать с бд и есть ли для этого отдельные библиотеки?

Re: Как работать с бд и есть ли для этого отдельные библиотеки?

mc-black » 15 апр 2009, 20:54

odbc32.dll, ветка в MSDN по ODBC и вперед! =) Могу подкинуть ссылок:

на русском кое-что;
Microsoft Open Database Connectivity (ODBC)

Re: Как работать с бд и есть ли для этого отдельные библиотеки?

Resager » 15 апр 2009, 19:37

О, спасибо всем, на выходных гляну, буду разбираться....

Язык да, AutoHotKey, DLLCall() - именно из-за неё и искал библиотеки а не субд с интерфейсом... буду пытаться

Re: Как работать с бд и есть ли для этого отдельные библиотеки?

Laba » 15 апр 2009, 14:39

Resager писал(а):
задача у меня такая, сделал программу, для создания теста (Элементы: Вопрос, путь к изображению, варианты (их Н штук), ответ на вариант, ещё несколько флагов, несколько числовых данных, и ещё одна строка).
Мне нужно Создавать файл с этими элементами, изменять, добавлять (может и удалять тоже).
И самое главное, шифрование, с использованием пароля. А для этого, считаю удобным использовать внешнюю функцию, с уже созданной организацией БД.
На счёт тысячи книг, а не датите хотя бы пару названий полезных таких книг про БД (ну более менее современные), на ваш вкус.
Типичная задача по работе с БД. Надо бы почитать про SQL. Там есть операции изменения данных. Чтение нужных записей тоже есть.

И проблема разграничения доступа решена. :) Не нужно будет шифроваться.

Книги про SQL уже обсуждали в соседней ветке

http://forum.developing.ru/showthread.php?t=14566

Re: Как работать с бд и есть ли для этого отдельные библиотеки?

mc-black » 15 апр 2009, 14:38

Если AHK - это сокращение от названия скриптового движка AutoHotkey, то работать придется на API (при помощи ODBC к примеру). Вызвать API-функцию там может функция DllCall(). А вообще программировать на Этом обработку баз данных будет несладко. Но, как говорится в умелых руках все заработает. Книг по ODBC я не знаю, есть ветка в MSDN Microsoft Open Database Connectivity (ODBC) и есть уроки iczellion'а по применению ODBC на MASM32 - мне этого было достаточно. Если покопать, уверен, найдется литература также на русском языке.

Re: Как работать с бд и есть ли для этого отдельные библиотеки?

Naeel Maqsudov » 14 апр 2009, 17:30

Хотел сразу разъяснить аббревиатуры, но меня срочно позвали, поэтому отправил как есть :)

COM - Component Object Model. Про COM здесь прямо на developing.ru есть материалы com/
Если перейти на C++, то это точно будет несложно, а про "AHK" я ничего не могу сказать.

Вообще сама база физически может быть
- MSJet (Access) - 1 файл *.mdb
- DBASE или FoxPro - несколько dbf-файлов (по одному на таблицу) + несколько индексных файлов (файлы индексов у DBASE или FoxPro несовместимы)
- Paradox - несколько db-файлов (по одному на таблицу) + различные индексные файлы
- другие

Для работы с большинством форматов существуют технологии
- ADO
- DOA
- RDO
- ODBC
- некоторые другие
* Первые три основаны на технологии COM. Если кратко, то суть в том, что в некой DLL реализованы классы, которые обеспечивают работу с полями, таблицами, индексами, наборами записей (recodrset-ами).
* ODBC - это такой глобальный стандарт, который позволяет обратиться к некой DLL и вызывать специальные функции для подключения к БД, выполнения выборки данных, выполнения изменения данных. Сама ODBC использует некоторое количество драйверов для работы с разными типами БД.

ADO+MSJet на мой взгляд для вашей задачи лучше подходит.

Дополнительно по любой из аббревиатур сделайте поиск хоть в википедии, почитайте. Не хотелось бы все это тут цитировать и переписывать.

Re: Как работать с бд и есть ли для этого отдельные библиотеки?

Resager » 14 апр 2009, 17:02

COM-порт? О_о
А где можно прочитать. как использовать эту субд (через DLL)? - этот вопрос, думаю, стоит рассматривать, после того, как с первым....

Re: Как работать с бд и есть ли для этого отдельные библиотеки?

Naeel Maqsudov » 14 апр 2009, 16:59

По поводу книг: давайте сначала определимся с используемым движком, а уж потом будем говорить о книгах по конкретной СУБД.

Итак. Если вы можете работать с COM, то рассмотрите такой вариант:
База MSJet (т.е. Access) и готовые компоненты в виде ADO.
преимущества:
- вся база - один файл
- переносимость (в Windows всегда присутствует ядро MSJet (msjetXX.dll))
- удобное проектирование структуры БД с помошью Access
- с Access Вы уже немного знакомы, что тоже "плюс"
- MSJect предусматривает криптование базы, хотя и некриптованная она не не так уж читабельна на низком уровне :)
Даже если Ваши инструменты разработки не поддерживают COM, то можно воспользоваться ODBC. Access драйверы для ODBC естественно не проблема.

Re: Как работать с бд и есть ли для этого отдельные библиотеки?

Resager » 14 апр 2009, 16:23

Naeel Maqsudov
язык, на котором пишу - AHK, но как я полагаю, если организовать работу с БД через команду для работы с функциями, хранящиеся в библиотеках (dll), то от языка практически ничего не зависит (едиественная сложность, передавать параметры *-го типа.
Встроенных команд для работы с БД в языке на данный момент не обнаружил.
Однако в недалёком будущем буду реализовывать ту же самую задачю на С++ (эм... Виажулке 2008 :) )

mc-black,
спасибо за список терминов, обязательно поищю в википедии...

9e9names,
вы правы, мы изучали MS Access в 10-м классе, из того. что нам задавали (ну и примеры работы с MS Access в сети) я справлялся на ура... но ИМХО - это как в поинте рисовать Оргграфы... о БД никакого понятия не дало, однако мы не полностью же изучали эту СУБД.
Другие попробую...

Naeel Maqsudov,
задача у меня такая, сделал программу, для создания теста (Элементы: Вопрос, путь к изображению, варианты (их Н штук), ответ на вариант, ещё несколько флагов, несколько числовых данных, и ещё одна строка).
Мне нужно Создавать файл с этими элементами, изменять, добавлять (может и удалять тоже).
И самое главное, шифрование, с использованием пароля. А для этого, считаю удобным использовать внешнюю функцию, с уже созданной организацией БД.
На счёт тысячи книг, а не датите хотя бы пару названий полезных таких книг про БД (ну более менее современные), на ваш вкус.

Re: Как работать с бд и есть ли для этого отдельные библиотеки?

Naeel Maqsudov » 14 апр 2009, 14:47

Или так... Но в любом случае, Resager, Вы в этой теме просите объяснить Вам то, о чем написаны сотни тысяч книг. Поэтому давате вместо: "У меня возникла потребность в базе данных", - Вы расскажете подробно что Вы хотите получить в итоге.

Re: Как работать с бд и есть ли для этого отдельные библиотеки?

9e9names » 14 апр 2009, 12:23

Добавлю свои 5 копеек: на мой взгляд MS Access слегка извращает в глазах новичков представление о СУБД, связывая интерфейс фактически клиентского приложения над БД и движок самой БД. Я бы порекомендовал найти джентельменский набор веб-разработчика Денвер (он же Denwer), благо он бесплатный; комплект легко устанавливается (и легко удаляется :D ), автоматически устанавливает MySQL и phpMyAdmin - при помощи которых легко можно "пощупать" вставку, удаление и изменение данных или создание, удаление и изменение самих таблиц.

Вернуться к началу