![]() |
Модераторы: LSD |
![]() ![]() ![]() |
|
mikleN |
|
|||
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 28.4.2004 Репутация: нет Всего: нет |
Уважаемый ALL.
Не могу понять что такое ODBC, точнее идеологию, как это использовать. Кто такие источники данных и т .д. Задача стоит такая - из внешнего приложения нужно достать данные, которые оно готово предоставлять по ODBC. Спасибо. |
|||
|
||||
boevik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1452 Регистрация: 31.5.2004 Где: Израиль Репутация: 6 Всего: 35 |
Была/Есть такая идея у Microsoft, предоставить программисту универсальный интерфес для обращения к базам данных (и не только к ним).
С другой стороны, каждый производитель базы данных который хочет предоставить доступ к своей базе, пишет ODBC driver. Получается, что если ты как программист умеешь работать с ODBC, то не важно с какой базой ты работаешь, главное что б был установлен ODBC driver к той базе. Это идеология. А если конкретнее, то задавай более конкретный вопрос. -------------------- Никогда не говори никогда |
|||
|
||||
Гость_mikleN |
|
|||
Unregistered |
Есть внешняя программа, которая формирует поток данных в таблице, которые мне надо обрабатывать по мере поступления. Эта программа готова, судя по хэлпу, предоставлять эти данные по ODBC. Прежде чем начать экспорт она требует, чтобы в ее окошке пользователь настроил ODBC, а именно ввел соответствие между полями ее таблицы и таблицы, куда будет происходить вывод данных и выбрал "имя источника данных". Так вот я не могу понять, какая таблица имеется в виду, где ее место - в моей программе или где-то еще в Windows. если в недрах Windows, то как я получу к ней доступ. А данные - это просто текстовые данные.
Спасибо. |
|||
|
||||
boevik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1452 Регистрация: 31.5.2004 Где: Израиль Репутация: 6 Всего: 35 |
mikleN, наверное программа умеет работать с ODBC.
Тебе надо определить свою базу в ODBC и указать программе "имя источника данных", как имя которое ты определишь ей в ODBC. -------------------- Никогда не говори никогда |
|||
|
||||
Гость_mikleN |
|
|||
Unregistered |
Спасибо большое за ответ.
>наверное программа умеет работать с ODBC Программа умеет работать, я не умею. >Тебе надо определить свою базу в ODBC и указать программе "имя источника данных", как имя которое ты определишь ей в ODBC. Т.е. через панель управления Windows->Источники данных ODBC я ввожу новый пользовательский DSN со своим названием - это и есть "имя источника данных" . А где там определять таблицу то и поля ее, и как моя программа должна получать данные. Не могу понять никак. Спасибо. |
|||
|
||||
boevik |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1452 Регистрация: 31.5.2004 Где: Израиль Репутация: 6 Всего: 35 |
Все верно.
В ODBC нельзя определить, насколько я понял, это надо определять в программе, которая экспортирует данные.
Тебе не обязательно работать из своей программы через ODBC. Работай так как ты умеешь. А где сидят данные, ты знаешь. Ты ведь определил source для ODBC. -------------------- Никогда не говори никогда |
||||||
|
|||||||
Гость_mikleN |
|
|||
Unregistered |
Спасибо.
>В ODBC нельзя определить, насколько я понял, это надо определять в программе, которая экспортирует данные. Так вот она просит ввести соответствие между полями ее таблицы с данными и полями таблицы в которую эти данные должны попасть. >Тебе не обязательно работать из своей программы через ODBC. Работай так как ты умеешь. А где сидят данные, ты знаешь. Ты ведь определил source для ODBC. А как я из своей программы обращусь к ODBC. Вообще ODBC это что такое - это файлы, которые переиодически обновляются, это какой-то Control WinAPI или область памяти раздялемая. Не знаю я и не могут понять. Спасибо. |
|||
|
||||
boevik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1452 Регистрация: 31.5.2004 Где: Израиль Репутация: 6 Всего: 35 |
Нет, не файлы. ODBC это интерфейс. Что это значит. Программа экспорт умеет общаться с ODBC. У тебя есть база данных (или текстовые файлы), которую ты можешь определить в ODBC. Вот и получается, что программа будет экспортировать данные в твою базу через ODBC. Ты знаешь, где ты лежит, твоя база. И сможешь добраться до данных без ODBC, напрямую. Давай конкретнее, куда ты экспортируешь данные в текстовый файл или в базу данных? -------------------- Никогда не говори никогда |
|||
|
||||
Гость_mikleN |
|
|||
Unregistered |
Есть данные во внешней программе, котороые она получает в процессе своей работы. Мне нужно написать программу, которая будет обрабатыывать эти данные дополнительно. Внешняя программа умеет отдавать свои данные через ODBC (есть там кнопка Экспорт данных). Мне нужно написать программу которая будет эти данные поолучать и обрабатывать. Мне все равно текстовый ли это файл и чего то там еще, мне нужно добравться до данных, а вообще это текст. Т.е мне базу надо предварителньо создать что ли, в которую будут попадать эти данные. Т.е. прежде чем начать экспорт, моя программа должна создать базу и как-то объявить об этом Windows. наврное так.Да? спасибо. |
|||
|
||||
Гость_mikleN |
|
|||
Unregistered |
Прошу прощения. но я дейсительно не понимаю.
Вот сейчас я думаю так (поправьте меня, please, если я ошибаюсь) - моя программа сохздает базу данных, которую я через панель управления Windows поключаю к интьерфейсу ODBC к какому то имени и посылаю программу на начало импорта каким-то образом. Потом я подключаю ту внешнюю программу к этому же имени интерфейса ODBC и говорю ей начать экспорт. Если это так, то вопрос где определеяется структура таблицы в которую будут поступать данные. Прошу простить меня, если я тут всех достал и спасибо огромное за ответы и терпение. |
|||
|
||||
boevik |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1452 Регистрация: 31.5.2004 Где: Израиль Репутация: 6 Всего: 35 |
Почти верно. Не обязательно создавать базу через свою программу. Тем более, что ты хочешь экспортировать в текстовые файлы. Тебе надо зайти в ODBC и создать новое имя (Data Source), указав драйвером Microsoft Text Driver. В определении нового Data Source ты указываешь папку в которой будут находится твои данные.
Как работает ODBC с текстовыми файлами? Каждый текстовый файл в папке является таблицей. Её имя это название файла. К примеру, файл под именем table1.txt будет виден как таблица с таким же именем. Естественно в текстовом файле нельзя определить структуру таблицы. Но первая строка задает названия полей и обычно разделение идет через запятую. Т.е. первая строка "f1,f2,f3" говорит о том, что в этой таблице есть 3 поля и названия у них f1, f2, f3. Удачи. -------------------- Никогда не говори никогда |
||||
|
|||||
Гость_mikleN |
|
|||
Unregistered |
Спасибо. Стало значительно лучше.
А еще подскажите. пожулйста, пару операторов API для работы с ODBC, чтобы мне сразу на хелп SDK попасть. |
|||
|
||||
boevik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1452 Регистрация: 31.5.2004 Где: Израиль Репутация: 6 Всего: 35 |
Гость_mikleN, а в чем ты программу пишешь?
Я работаю с ODBC через ADO. -------------------- Никогда не говори никогда |
|||
|
||||
Гость_mikleN |
|
|||
Unregistered |
<quote>Гость_mikleN, а в чем ты программу пишешь?
Я работаю с ODBC через ADO. </quote> Я Delphi использую. А ADO - это что такое. Опять прошу прощения за такие вопросы, но, често говорю, не знаю что это такое. Подозреваю, что это надстройка Delphi для удобства работы с ODBC. Нет? |
|||
|
||||
boevik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1452 Регистрация: 31.5.2004 Где: Израиль Репутация: 6 Всего: 35 |
ADO - Аctive Data Object. Это ActiveX DLL (еще один интерфейс) для работы с базами данных. К сожалению, я работаю с VB. И я думаю, что тебе надо обращаться на форум Delphi, что б узнать как работать с ODBC. Но тебе не обязательно работать с ODBC. После экспорта данных, данные находятся в текстовый файлах. И ты можешь прочитать их на прямую, минуя ODBC, как обыкновенный текстовый файл. -------------------- Никогда не говори никогда |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Общие вопросы по базам данных" | |
|
Данный форум предназначен для обсуждения вопросов о базах данных не попадающих под тематику других форумов:
Данный форум не предназначен для:
Если вы не соблюдаете эти правила, не удивляйтесь потом не найдя свою тему/сообщение.
Полезные советы: Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, LSD, Zloxa. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | СУБД, общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |