|
|
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
Нужны бибиотека(и), предоставляющие прямой доступ к файлам базы данных (.dbc, .dbf, .idx, .cdx), позволяющие собирать информацию о ее структуре (таких как список таблиц, полей индесков и прочее), не обращаясь к какому-либо провайдеру баз данных, а работая напрямую с файлами. Может кто-нибудь сталкивался с такими на интернетовских просторах или писал, напишите или дайте ссылки. Не важно, платные они или нет. Искал много, нашел несколько таких бибиотек, но мало какие из них работают с фалом .dbc - контейнером БД, а работать с ним как с обычной таблицой не охота, если уж иметь высокоуровневый интерфейс, то до конца. Вариант с СОМ-интерфейсом, написанным на FoxPro хорош конечно, но с ним появляется много проблем (нужно регистрировать, нужно указывать обязательно нужный файл ресурсов и прочее...). Хотя, с другой стороны, этот вариант легче всего реализовать. Спасибо всем, кто поможет! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2007, 12:44 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
ADBOBJECTS(ArrayName, cSetting) DBGETPROP( ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2007, 12:55 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
PaulWistADBOBJECTS(ArrayName, cSetting) DBGETPROP( ) Спасибо конечно, но все это я уже делал! Но возникают некоторые проблемы, которые я описывал в своем первом сообщении. Дело в том, что мне нужно что-то написаное не на фоксе, а на другом языке, лучше всего конечно на С++. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2007, 13:18 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
В HELP к FoxPro есть описание структуры таблицы. Файл DBC - это обычный файл DBF, только с измененным расширением. Т.е. вообще-то, не проблема прочитать файл DBC как обычный текстовый файл и опираясь на описанную структуру вытащить нужную информацию. Никаких провайдеров и дополнительных библиотек. Все можно сделать самому. Структура табличного файла (.dbc, .dbf, .frx, .lbx, .mnx, .pjx, .scx, .vcx) Какое поле, какую информацию содержит можно догадаться по содержимому, просто посмотрев Код: plaintext 1. 2. Там явная древовидная структура ObjectId-ParentId Или опять же посмотреть в документации к FoxPro. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2007, 13:30 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
Да, по ссылке выставлена кодировка по умолчанию UTF-8, поэтому надо вручную щелкнуть правой клавишей мыши на тексте и выбрать пункт: Кодировка - Кирилица (Windows) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2007, 13:32 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
ВладимирМВ HELP к FoxPro есть описание структуры таблицы. Файл DBC - это обычный файл DBF, только с измененным расширением. Т.е. вообще-то, не проблема прочитать файл DBC как обычный текстовый файл и опираясь на описанную структуру вытащить нужную информацию. Никаких провайдеров и дополнительных библиотек. Все можно сделать самому. Дак если бы... Структура файла не сложная, и все можно написать, насчет этого я согласен. Но вот начальство не хочет тратить времени на разработку этого. Тем более что нужно не просто прочитать данные, но и создавать пустые базы данных и прочее. А это еще и вставка значений в поля мемо файла .dbc (тексты триггеров и прочее). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2007, 13:50 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
На самом деле не обойтись без нормального открытия базы ч-з ODBC. Коннект сишный обычный. А дальше - читать базу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2007, 17:39 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
ORAselectНа самом деле не обойтись без нормального открытия базы ч-з ODBC. Коннект сишный обычный. А дальше - читать базу. Если честно, то через ODBC стучатся к базе не пробовал, причем по нескольким соображениям: - После установки Visual FoxPro 9 ODBC стало требовать у меня обновлений и регистрировать новый источник данных отказывалось напрочь. - Удобнее использовать провайдер (VFPOLEDB.dll), который легко засунуть в установочный файл. - Работа с базой будет сводится не просто к чтению данных и ее структуры, но и созданию баз данных. Подумав, что если провайдер не поддерживает некоторые команды языка (в частности, очень нужную CREATE DATABASE), я решил, что и ODBC тоже этого не делает. Впрочем, если я ошибаюсь, скажите мне. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2007, 10:15 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
Если честно, то через ODBC стучатся к базе не пробовал, причем по нескольким соображениям: - После установки Visual FoxPro 9 ODBC стало требовать у меня обновлений и регистрировать новый источник данных отказывалось напрочь. - Удобнее использовать провайдер (VFPOLEDB.dll), который легко засунуть в установочный файл. - Работа с базой будет сводится не просто к чтению данных и ее структуры, но и созданию баз данных. Подумав, что если провайдер не поддерживает некоторые команды языка (в частности, очень нужную CREATE DATABASE), я решил, что и ODBC тоже этого не делает. Впрочем, если я ошибаюсь, скажите мне.[/quot] Посмотри ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2007, 10:33 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
s@ilor ORAselectНа самом деле не обойтись без нормального открытия базы ч-з ODBC. Коннект сишный обычный. А дальше - читать базу. Если честно, то через ODBC стучатся к базе не пробовал, причем по нескольким соображениям: - После установки Visual FoxPro 9 ODBC стало требовать у меня обновлений и регистрировать новый источник данных отказывалось напрочь. - Удобнее использовать провайдер (VFPOLEDB.dll), который легко засунуть в установочный файл. - Работа с базой будет сводится не просто к чтению данных и ее структуры, но и созданию баз данных. Подумав, что если провайдер не поддерживает некоторые команды языка (в частности, очень нужную CREATE DATABASE), я решил, что и ODBC тоже этого не делает. Впрочем, если я ошибаюсь, скажите мне. "После установки Visual FoxPro 9 ODBC стало требовать ... " - интересно, а как ты хотел ... и fox здесь не причем, винду тоже надо обновлять ... ставь новый MDAC v2.8 sp1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2007, 10:38 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
PaulWist Посмотри Посмотрел, но не понял что вы хотите этим сказать? Провайдер все равно не хавает некоторые команды, хоть как их цепляй. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2007, 11:19 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
qwertyqwerty "После установки Visual FoxPro 9 ODBC стало требовать ... " - интересно, а как ты хотел ... и fox здесь не причем, винду тоже надо обновлять ... ставь новый MDAC v2.8 sp1 Да, вы правы. Все дело в том, что неохота каждого, установившего программу отсылать за обновлениями. Кто-то сопокойно обновит, а кто-то скажет, что мы работать не умеем и пойдет к конкурентам. С СОМ-ом таких проблем нет, установил run-time и все пашет. Но почему он не подходит, я уже писал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2007, 11:26 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
s@ilor qwertyqwerty "После установки Visual FoxPro 9 ODBC стало требовать ... " - интересно, а как ты хотел ... и fox здесь не причем, винду тоже надо обновлять ... ставь новый MDAC v2.8 sp1 Да, вы правы. Все дело в том, что неохота каждого, установившего программу отсылать за обновлениями. Кто-то сопокойно обновит, а кто-то скажет, что мы работать не умеем и пойдет к конкурентам. С СОМ-ом таких проблем нет, установил run-time и все пашет. Но почему он не подходит, я уже писал. Тогда все, кто еще работает под DOS так же скажут, что вы работаь не умеете ... чушь это все ... или кто работает под Linux (Вдруг вам такой клиент попадется) то же скажет "Винду ... ставить ... да вы работать не умеете!" Используй InstallShield полной версии, где в дистрибутив можно все что нужно включить, в том числе и минимально требуемые компоненты для обновления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2007, 13:22 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
qwertyqwerty Тогда все, кто еще работает под DOS так же скажут, что вы работаь не умеете ... чушь это все ... или кто работает под Linux (Вдруг вам такой клиент попадется) то же скажет "Винду ... ставить ... да вы работать не умеете!" Используй InstallShield полной версии, где в дистрибутив можно все что нужно включить, в том числе и минимально требуемые компоненты для обновления. Извините конечно, но вот Вы чушь написали, так написали. Только последний идиот будет ставить прогу на Linux, если она написана для Винды. Погуглите насчет системных требований, будет полезно. Вас послушать, так нужно сервис паки вставлять в инсталяхи и винду, на всякий случай, вдруг не будет у юзера... Тот, кто платит деньги за программы, хотят чтобы они работали сейчас же после установки, а не после того, как он из кучи мест накачает кучу dll-ок и закинет в кучу папок. Да и ему все равно будет на обновления, он закидает письмами разработчиков и будет все требовать от них. Если вы когда-нибудь сталкивались с support-ом, то должны хоть немного понимать это. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2007, 07:55 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
s@ilor qwertyqwerty Тогда все, кто еще работает под DOS так же скажут, что вы работаь не умеете ... чушь это все ... или кто работает под Linux (Вдруг вам такой клиент попадется) то же скажет "Винду ... ставить ... да вы работать не умеете!" Используй InstallShield полной версии, где в дистрибутив можно все что нужно включить, в том числе и минимально требуемые компоненты для обновления. Извините конечно, но вот Вы чушь написали, так написали. Только последний идиот будет ставить прогу на Linux, если она написана для Винды. Погуглите насчет системных требований, будет полезно. Вас послушать, так нужно сервис паки вставлять в инсталяхи и винду, на всякий случай, вдруг не будет у юзера... Тот, кто платит деньги за программы, хотят чтобы они работали сейчас же после установки, а не после того, как он из кучи мест накачает кучу dll-ок и закинет в кучу папок. Да и ему все равно будет на обновления, он закидает письмами разработчиков и будет все требовать от них. Если вы когда-нибудь сталкивались с support-ом, то должны хоть немного понимать это. Даааааа.... А вы думаете на предприятия одни обалдуи сидят, и них ... не понимают, что винду надо регулярно обновлять?!!! Если в той конторе этого не понимают или не знают, т.е. у нее нет даже обычного приходящего админа ... то хреновая эта контора ... от таких клиентов бежать надо! Во вторых не из кучи мест ... есть стандартный Win update ... подсказать ... который помогает регуляно следить за состоянием ОС. В третьих, вы читать умеете, я же вам сказал про InstallShield - запустил подготовленный правильно дистрибут и все работает!!! Не нравится InstallShield, найдите другой инсталятор! Или не слышали как ими пользуются?! Это похоже вы никогда нормально суппортом не занимались, и не знаете что в этих случаях делают, и как надо правильно распространять ПО! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2007, 09:40 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
s@ilor qwertyqwerty Тогда все, кто еще работает под DOS так же скажут, что вы работаь не умеете ... чушь это все ... или кто работает под Linux (Вдруг вам такой клиент попадется) то же скажет "Винду ... ставить ... да вы работать не умеете!" Используй InstallShield полной версии, где в дистрибутив можно все что нужно включить, в том числе и минимально требуемые компоненты для обновления. Извините конечно, но вот Вы чушь написали, так написали. Только последний идиот будет ставить прогу на Linux, если она написана для Винды. Погуглите насчет системных требований, будет полезно. Вас послушать, так нужно сервис паки вставлять в инсталяхи и винду, на всякий случай, вдруг не будет у юзера... Тот, кто платит деньги за программы, хотят чтобы они работали сейчас же после установки, а не после того, как он из кучи мест накачает кучу dll-ок и закинет в кучу папок. Да и ему все равно будет на обновления, он закидает письмами разработчиков и будет все требовать от них. Если вы когда-нибудь сталкивались с support-ом, то должны хоть немного понимать это. А про Linux вы даже юмора не поняли ... объясняю: понятно, что пример крайний, но дураков, которые будут обвинять не известно в чем хватает везде ... Теперь понятно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2007, 09:47 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
qwertyqwerty Даааааа.... А вы думаете на предприятия одни обалдуи сидят, и них ... не понимают, что винду надо регулярно обновлять?!!! Если в той конторе этого не понимают или не знают, т.е. у нее нет даже обычного приходящего админа ... то хреновая эта контора ... от таких клиентов бежать надо! Во вторых не из кучи мест ... есть стандартный Win update ... подсказать ... который помогает регуляно следить за состоянием ОС. В третьих, вы читать умеете, я же вам сказал про InstallShield - запустил подготовленный правильно дистрибут и все работает!!! Не нравится InstallShield, найдите другой инсталятор! Или не слышали как ими пользуются?! Это похоже вы никогда нормально суппортом не занимались, и не знаете что в этих случаях делают, и как надо правильно распространять ПО! Вашу шутку юмора я понял, задумайтесь над моей шуткой юмора. И не надо переходить на то, что у кого-то руки не оттуда растут. У всех растут из одного места, в том числе и у вас. Суппортом занимались и занимаемся, каждый может заниматься им в меру своего понимания. Вы похоже даже не пытаетесь понять, что я хочу сказать. Обясняю на пальцах - в наших установочных файлах есть все необходимое, чтобы программа запустилась на пустой тачке, даже только что установленной. А засовывать в дистры все "на всякий случай" НЕ ИМЕЕТ СМЫСЛА, потому что он будет расти как снежный ком. Работаем в основном с американцами и европейцами, и я не знаю как часто они обновляют свой комп, тем более что большинству из них приходится на пальцах объяснять куда нажимать и что написать, чтобы было им счастье, а вы еще хотите, чтобы они ставили обновления на свои компы... Как и чем пользоваться и я могу вас поучить, не кидайтесь такими словами! Тоже самое относится и к вашим высказываниям о суппорте. Да и тема открыта не для обсуждения вопросов поддержки и распространения софта, а для совсем другого. Спасибо за ваше мнение, если вы не можете посоветовать, где можно достать то, что я просил, то давайте воздержимся от взаимных обвинений и перебранок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2007, 12:22 |
|
||
|
Прямой доступ к БД
|
|||
|---|---|---|---|
|
#18+
to s@ilor "то давайте воздержимся от взаимных обвинений и перебранок" - хорошая мысль, тем более приятно от вас это услышать, если вы вспомните, начали вы. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2007, 17:21 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=34274723&tid=1590004]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
58ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
69ms |
get tp. blocked users: |
2ms |
| others: | 240ms |
| total: | 409ms |

| 0 / 0 |
