Форум программистов CODEBY.NET Хостинг в Беларуси — Active Technologies

Разработка бизнес сайтов

Нужны клиенты? Тогда сюда быстрее...
X   Сообщение сайта
(Сообщение закроется через 2 секунды)

Здравствуйте, гость ( Вход | Регистрация )




> прошу помощи связь с базой данных через Odbc
кнопикс
Вставить ник
сообщение 25:04:2007, 07:18
Цитата Ответить 


Новенький
*

Группа: Программист
Сообщений: 5
Регистрация: 25:04:2007
Пользователь №: 10 458



Репутация: - 0 +


Ребят столкнулся с проблемой. Нужно написать простенькое консольное приложение для связи с БД (Paradox, Accces, Oracle любую на выбор мне лучше Paradox) и получение в консоли результата запроса затем на основании полученного отправляеться динамический SQL запрос на обновление записей таблицы, с запросами разобрался вопрос в том как подключиться к БД через ODBC именно сам код . Язык приложения обязательно С или С++ пишу на них всего 3 недели поэтому если можно попроще. Мне б только сам код подключения и какие заголовочные включать. Заранее благодарю. ЗЫ работу сдавать через 5 дней = (( PS. забыл добавить база данных локальная можно даже в каталоге с программой
Подняться вверх 
 
Сообщение #1
 
Новая тема 
Ответов (1 - 12)
SunSanych
Вставить ник
сообщение 25:04:2007, 08:27
Цитата Ответить 


Новенький
*

Группа: Программист
Сообщений: 62
Регистрация: 28:06:2006
Пользователь №: 5 086
Специализация: программист С++



Репутация: - 2 +


#include <afxdb.h> // MFC ODBC database classes

CDatabase db;

try
{
db.OpenEx("DSN=SourceDB;UID=userDB;PWD=megapassword",CDatabase::noOdbcDialog);
}
catch(CDBException* e )
{
// Обработчик ошибки.
e->Delete();
return FALSE;
}

Самое интересное здесь - это первая строка в функции OpenEx().
DSN - имя источника данных ODBC.
UID - имя пользователя, которому разрешен доступ к БД.
PWD - его пароль

Все остальные настройки находятся в самом источнике данных ODBC. Эти настройки отличаются для разных драйверов ODBC, поэтому надо смотреть на месте.

P.S. Кстати, второй параметр задает некоторые иногда полезные настройки, их можно посмотреть в MSDN или прямо в исходниках. У них понятные названия. Например noOdbcDialog - подавляет появление окна где можно выбрать источник данных ODBC. Но обычно это свойство устанавливается, чтобы не тыкать стопятдесяттысячный раз мышкой, выбирая один и тот же источник. smile.gif
Подняться вверх 
 
Сообщение #2
кнопикс
Вставить ник
сообщение 26:04:2007, 01:49
Цитата Ответить 


Новенький
*

Группа: Программист
Сообщений: 5
Регистрация: 25:04:2007
Пользователь №: 10 458



Репутация: - 0 +


San Sanych огромное спасибо за ответ. Но теперь возникла новая проблема =(( , я писал вручную и использовал Borland C++ Compiler 5.5 но там нет заголовочного afxdb.h поставил Builder 6.0 там есть но проблема он в папке MFC а подключить его не могу то что в папке include подключаеться а во вложеных нет вообщем чайник я ещё тот но лабораторную делать надо ((.
Навыка написания в Билдере 1 день до этого писал только вручную и только простые програмки для консоли. Если можно объясни как подключить заголовочные файлы не из папки include для Билдера или если можно то как их добавить для компилятора мне с ним как то привычней. И второе я так понял что вместо выражения DSN=SourceDB в функции OpenEX нужно указать тип источника данных или просто путь к файлу базы с его именем типа С:\...\org.db или вообще просто имя DSN=org.db.
Подняться вверх 
 
Сообщение #3
European
Вставить ник
сообщение 26:04:2007, 07:20
Цитата Ответить 


Божественный
*****

Группа: Модеры
Сообщений: 1 816
Регистрация: 4:09:2006
Из: Минск
Пользователь №: 6 316
Специализация: C++



Репутация: - 31 +


Цитата(кнопикс @ 26:04:2007, 04:49 )
я писал вручную и использовал Borland C++ Compiler 5.5 но там нет заголовочного afxdb.h
*

Приведенный выше пример предназначен для Visual Studio. Подробности ЗДЕСЬ
В Builder 6.0 можно использовать компоненты доступа к данным. Подробности ЗДЕСЬ
Подняться вверх 
 
Сообщение #4
SunSanych
Вставить ник
сообщение 26:04:2007, 07:42
Цитата Ответить 


Новенький
*

Группа: Программист
Сообщений: 62
Регистрация: 28:06:2006
Пользователь №: 5 086
Специализация: программист С++



Репутация: - 2 +


European полностью прав - мой пример из MS Visual Studio с включенной в проект библиотеки MFC и в Builder это не сработает sad.gif . Сам Builder не пользовался и ничего сказать не могу, так что отсылаю по ссылке выше.
Подняться вверх 
 
Сообщение #5
кнопикс
Вставить ник
сообщение 26:04:2007, 12:43
Цитата Ответить 


Новенький
*

Группа: Программист
Сообщений: 5
Регистрация: 25:04:2007
Пользователь №: 10 458



Репутация: - 0 +


Ребят спасибо большое но боюсь что Visual Studio за оставшееся время до сдачи лабораторной мне не осилить боьше время потрачу на разбор среды чем на написание программы. А можно ли установить соединение используя только библиотеки Борланд Компилера пусть не ODBC а что нибудь другое может BDE или ещё что. Мне суть соединения не столь важна скорость тоже объём данных для пересылки мизер главно чтоб было любое соединение.
Подняться вверх 
 
Сообщение #6
European
Вставить ник
сообщение 26:04:2007, 12:47
Цитата Ответить 


Божественный
*****

Группа: Модеры
Сообщений: 1 816
Регистрация: 4:09:2006
Из: Минск
Пользователь №: 6 316
Специализация: C++



Репутация: - 31 +


Я же тебе ссылку дал, что не устраивает?

Сообщение отредактировал European - 26:04:2007, 12:47
Подняться вверх 
 
Сообщение #7
кнопикс
Вставить ник
сообщение 26:04:2007, 13:50
Цитата Ответить 


Новенький
*

Группа: Программист
Сообщений: 5
Регистрация: 25:04:2007
Пользователь №: 10 458



Репутация: - 0 +


ТО European Спасибо за ответ. Не устраивает:

Билдер не подходит так как необходимо написать консольное приложение а в Билдере указанные компонеты добавляются в форму а можно ли их использовать для консоли и как я не знаю

Visual Studio её отсутствие и полное неуменее с ней работать а учиться просто некогда до сдачи 4 дня по ссылке расписано конечно очень здорово но всё равно боюсь что вряд ли успею разобраться sad.gif хотя всё равно завтра куплю да всё таки попробую

А использовать этот код для написания вручную не получается так как в Borland C++ Compiler 5.5 нет MFC и как её туда добавить не знаю

А главное sad.gif Язык приложения обязательно С или С++ пишу на них всего 3 недели

Так что если можно подскажи как сделать иначе

ЗЫ: хотя с Visual Studio всётки попробую
Подняться вверх 
 
Сообщение #8
European
Вставить ник
сообщение 26:04:2007, 14:04
Цитата Ответить 


Божественный
*****

Группа: Модеры
Сообщений: 1 816
Регистрация: 4:09:2006
Из: Минск
Пользователь №: 6 316
Специализация: C++



Репутация: - 31 +


Цитата(кнопикс @ 26:04:2007, 16:50 )
Билдер не подходит так как необходимо написать консольное приложение а в Билдере указанные компоненты добавляются в форму а можно ли их использовать для консоли и как я не знаю
*

Данные компоненты можно использовать и в консольном приложении, только создавай их динамически и инициализируй прямо в коде.

Сообщение отредактировал European - 26:04:2007, 14:05
Подняться вверх 
 
Сообщение #9
sax_ol
Вставить ник
сообщение 26:04:2007, 15:15
Цитата Ответить 


==============
*****

Группа: Модеры
Сообщений: 1 740
Регистрация: 11:01:2007
Пользователь №: 8 750
Специализация: specialist



Репутация: - 27 +


Цитата(European @ 26:04:2007, 17:04 )
только создавай их динамически и инициализируй прямо в коде.

и не забывать освобождать память ... smile.gif
Подняться вверх 
 
Сообщение #10
кнопикс
Вставить ник
сообщение 26:04:2007, 23:47
Цитата Ответить 


Новенький
*

Группа: Программист
Сообщений: 5
Регистрация: 25:04:2007
Пользователь №: 10 458



Репутация: - 0 +


[quote]

Ну спасибо ohmy.gif

Именно это я и имел ввиду когда просил попроще laugh.gif
Подняться вверх 
 
Сообщение #11
European
Вставить ник
сообщение 27:04:2007, 08:15
Цитата Ответить 


Божественный
*****

Группа: Модеры
Сообщений: 1 816
Регистрация: 4:09:2006
Из: Минск
Пользователь №: 6 316
Специализация: C++



Репутация: - 31 +


Для: кнопикс
Ну так заплати пару баксов и тебе все напишут... Самый простой вариант
Подняться вверх 
 
Сообщение #12
sax_ol
Вставить ник
сообщение 27:04:2007, 08:23
Цитата Ответить 


==============
*****

Группа: Модеры
Сообщений: 1 740
Регистрация: 11:01:2007
Пользователь №: 8 750
Специализация: specialist



Репутация: - 27 +


или купить готовое, тоже вариант не сложный
Подняться вверх 
 
Сообщение #13


Быстрый ответ  Ответить  Новая тема 

> Быстрый ответ
Полужирный
Курсив
Подчеркнутый
Вставить изображение
Смайлики
Цитата
Код
 
 Отправлять уведомления об ответах на e-mail |  Включить смайлики |  Добавить подпись
   

 

RSS Текстовая версия Сейчас: 17:05:2008 - 07:13
с нами можно связаться по:
телефону: +375-(29)-632-60-67
e-mail:info@codeby.net