|
пути к базе данных
|
|||
---|---|---|---|
#18+
Создан проект на VFP9. Структура: -Class -Data (одна база данных, в ней хранятся все таблицы) -Form -Help -Menus и тд. Требуется: переместить папку Data (с базой данных) на другой диск (отдельно от .exe). Вопрос: как из проекта настроить «доступ» к этой папке? Чтобы после компиляции проект обращался к этой папке извлекал, удалял, сохранял данные. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2011, 16:00 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
AllkayСоздан проект на VFP9. Структура: -Class -Data (одна база данных, в ней хранятся все таблицы) -Form -Help -Menus и тд. Требуется: переместить папку Data (с базой данных) на другой диск (отдельно от .exe). Вопрос: как из проекта настроить «доступ» к этой папке? Чтобы после компиляции проект обращался к этой папке извлекал, удалял, сохранял данные. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2011, 16:34 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
Расположение файлов проекта В настройке SET PATH можно указывать не только абсолютные, но и относительные (относительно текущей директории) пути доступа. Если текущей директорией является та, внутри которой и расположены созданные директории, то перемещение в другое место не портебует никаких изменений в настройках. Для большинства задач этого вполне достаточно. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2011, 17:35 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
Как правильно заполнить файл config.fpw? В нем: Как правильно прописать путь, с помощью опции PATH, к директории data с Базой Данных : - на диске - на сервере При компиляции где должна находиться папка data с Базой Данных ? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2011, 11:34 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
AllkayКак правильно заполнить файл config.fpw? В нем: Как правильно прописать путь, с помощью опции PATH, к директории data с Базой Данных : - на диске - на сервере При компиляции где должна находиться папка data с Базой Данных ? А зачем это всё кино надо ? Запускаем приложение, оно открывает локальный файл (типа CONFIG.DBF), читает оттуда путь к БД. Нашлась БД - всё ОК, работаем с ней, не нашлась - выдать запрос на указание папки с БД и если мы указали какой-то новый путь к папке БД, то записываем его в CONFIG.DBF для следующих запусков. Автор сам себе головную боль зарабатывает. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2011, 12:33 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
Смысл в чем, есть готовый проект и все данные проекта, и таблицы с данными хранятся в БД «BD1» в папке DATA. Мне нужно переместить эту папку на другой диск или сервер (не важно), и прописать путь к БД. Проблема: Как разделить проект с БД. -Если папка data расположена вместе с проектом проблем нет. -Если папка data расположена на другом диске выдает сообщение об ошибке (нет «BD1»). Прописать пути к БД в файл config.fpw, только к папке или к каждой таблице в БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2011, 13:57 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
Уже давно бы попробовали. Делов-то, переименовать старую папку с данными (чтобы "скрыть" ее от проекта) и создать новую (можно на то же компьютере). Затем поиграться с путями доступа, чтобы все заработало. AllkayПрописать пути к БД в файл config.fpw, только к папке или к каждой таблице в БД. Как Вы себе представляете прописывание пути доступа (без собственно имени файла) к каждой таблице в БД? SET PATH - это адреса папок. Как Вы собираетесь записать здесь адреса таблиц? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2011, 14:34 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
AllkayСмысл в чем, есть готовый проект и все данные проекта, и таблицы с данными хранятся в БД «BD1» в папке DATA. Мне нужно переместить эту папку на другой диск или сервер (не важно), и прописать путь к БД. Проблема: Как разделить проект с БД. -Если папка data расположена вместе с проектом проблем нет. -Если папка data расположена на другом диске выдает сообщение об ошибке (нет «BD1»). Прописать пути к БД в файл config.fpw, только к папке или к каждой таблице в БД. А на фиг тут вообще вам config.fpw ? Да храните путь к БД в локальной табличке (где много прочего мусора) типа CONFIG.DBF (если есть желание, даже в текстовом файле) и берите этот путь при каждом запуске приложения. Проверили при запуске, а есть ли в этой папке какой-нить характерный файл. Если есть, да, это та самая папка. Если файла нет, то увы, облом, предлагается окошко для выбора папки. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2011, 15:00 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
Попробовал. Переименовал папку, даже создал новый проект, но после запуска положения он ищет папку с базой данных у себя в папке “Proect”. Прописал в файле config.fpw путь (SET PATH TO D:\BD\DATA) доступа к папке data – но он все равно ищет в папке “Proect”. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2011, 16:04 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
reware, Потому что все советуют указывать путь к БД в файле config.fpw. Сохраню путь в текстовом файле, а как брать путь из текстового файла при каждом запуске приложения.? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2011, 16:23 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
1. Чтобы определить какой именно файл конфигурации подхватывается при запуске EXE используйте функцию SYS(2019) 2. Если Вы хотите использовать настройку PATH в файле конфигурации, то убедитесь, что у Вас не используется настройка SET PATH в коде программы, поскольку она может затереть настройки файла конфигурации (если нет опции ADDITIVE) 3. Если используются относительные пути доступа, то принципиально важным становится директория по умолчанию относительно коьторой эти пути и будут определяться Для справки : В файле config.fpw синтаксис настройки имеет вид PATH=D:\BD\DATA В файле PRG синтаксис настройки имеет вид SET PATH TO D:\BD\DATA ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2011, 16:26 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
Allkayreware, Потому что все советуют указывать путь к БД в файле config.fpw. Сохраню путь в текстовом файле, а как брать путь из текстового файла при каждом запуске приложения.? Да бог с ним текстовым. Что мешает хранить этот путь в локально-эксклюзивном CONFIG.DBF ? Открыли его штатно, прочли этот путь, зашли в эту папку (если таковая обнаружена), совпал (по наличию какого-то характерного файла) путь с нужным - переключаемся на эту папку. Нет этого "характерного" файла, значит не та папка - выдаём диалог для выбора другой папки. Кронштейн ? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2011, 16:55 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
ВладимирМ1. Чтобы определить какой именно файл конфигурации подхватывается при запуске EXE используйте функцию SYS(2019) 2. Если Вы хотите использовать настройку PATH в файле конфигурации, то убедитесь, что у Вас не используется настройка SET PATH в коде программы, поскольку она может затереть настройки файла конфигурации (если нет опции ADDITIVE) 3. Если используются относительные пути доступа, то принципиально важным становится директория по умолчанию относительно коьторой эти пути и будут определяться Для справки : В файле config.fpw синтаксис настройки имеет вид PATH=D:\BD\DATA В файле PRG синтаксис настройки имеет вид SET PATH TO D:\BD\DATA С помощью функцию SYS(2019) проверил файл конфигурации: D:\uasnewexp\config.fpw. В файле config.fpw прописал путь: PATH=D:\database\data\. С компилировал проект, запустил – ответ системы: D:\uasnewexp\data\bduaski.dbc – файл не существует. А должен был искать: D:\database\data\ ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2011, 17:17 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
Ни чего не мешает!! только знать бы, как его создать, где хранить, и как штатно открывать? Я новичок на FOXe поэтому пока не очень «Кронштейн» ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2011, 17:24 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
AllkayС помощью функцию SYS(2019) проверил файл конфигурации: D:\uasnewexp\config.fpw. В файле config.fpw прописал путь: PATH=D:\database\data\. С компилировал проект, запустил – ответ системы: D:\uasnewexp\data\bduaski.dbc – файл не существует. А должен был искать: D:\database\data\ Вообще-то, проверять надо было из запускаемого приложения. В смысле, из EXE. Ну, например, где-то в начале главного (стартового) файла проекта записать нечто вроде Код: plaintext
Дело в том, что если файл Config.FPW включен внутрь EXE, то в первую очередь будут использоваться настройки этого самого "включенного" файла. Можно еще использовать ключ -C (латинская буква "С"), чтобы явно задать файл конфигурации, который следует использовать. Примерно так Код: plaintext
Здесь MyProg.exe - это Ваше приложение, скопилированное в EXE-файл. И еще, я бы посоветовал открывать контейнер базы данных "вручную" в главном стартовом файле проекта ДО открытия каких-либо форм. Примерно так Код: plaintext 1. 2.
==================== То, о чем говорит reware - это следующая стратегия. 1. Создается специальный файл DBF, который НЕ включен в контейнер базы данных. Так называемая, свободная таблица. В проекте это узел "Free Tables" на закладке Data. 2. Ну, структура этой таблицы может быть разной, но суть в том, что определенном поле определенной записи записан путь доступа к базам данных. 3. Данный файл DBF всегда кладется рядом с EXE в ту же самую директорию. Другими словами, этот файл всегда находится в директории по умолчанию. 4. В момент открытия приложения в главном стартовом файле проекта предпринимается попытка открыть эту таблицу прямой командой USE и прочитать настройку путей доступа. Далее командой SET PATH эти настройки устанавливаются. Разумеется, пункт 4 должен быть еще окружен рядом дополнительных проверок, как на факт существования такой таблицы, так и на факт существования нужной записи и нужного значения. Все это дополнительно программируется и обрабатываться возможные ошибки. Собственно, это тот же Config.fpw, но "вид сбоку". Преимущества данного способа в том, что кроме пути доступа можно хранить ряд других локальных настроек приложения. Хотя особого практического смысла это и не имеет, поскольку те же локальные настройки можно хранить и на сетевом ресурсе. Я бы сказал так. Пока Вы не разберетесь, почему через config.fpw у Вас не работает, пытаться использовать файл DBF для подобных настроек - не стоит. Вы просто повторите все те ошибки, которые уже сделали для config.fpw, но запутаетесь еще больше, поскольку тут будет больше кода. Как следствие, больше мест, где можно ошибиться. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2011, 20:46 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
Прописал в головной программе: MessageBox("config = " + SYS(2019) + chr(13) + "path = " + SET("PATH")) OPEN DATABASE bduaski.dbc SHARED SET DATABASE TO bduaski С компилировал без ошибок. Запустил. Он ответил: -[config = D:\uasnew1\config.fpw] -[path = D:\database\data\] Нажал ОК!: -ошибка: файл D:\uasnew1\data\bduaski.dbc не существует Нажал ОК!: -ошибка: файл не существует data\bduaski Нажал ОК!: - выкидывает из программы. Может я не правильно отделил БД от проекта? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2011, 10:58 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
я сделал форму txt button локальная база в которую записую пути при запуске проги вылетает форма нажал на кнопочки, настроил пути, запомнил и работаешь ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2011, 11:07 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
Allkay, Так кто ж знает, как ты ее отделял ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2011, 11:15 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
Изначально проект создавался в месте с папкой data. Отделил не правильно и не корректно. Перенес из одного места в другое.(Если кто знает скажите как правильно) Нужно что бы «uasoao.exe» знал где сидит «bduaski.dbc». ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2011, 12:00 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
Allkay, А в проект эта база данных у тебя включена? См. на вкладке Data ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2011, 12:32 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
Allkay, Поскольку база данных у тебя включена в проект, можешь встать на нее и внизу увидишь соответствующий путь к ней. Вот она и открывается, а то что ты как бы исключил из проекта, ровным счетом ничего не значит. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2011, 13:59 |
|
пути к базе данных
|
|||
---|---|---|---|
#18+
Прописал в головной программе: MessageBox("config = " + SYS(2019) + chr(13) + "path = " + SET("PATH")) OPEN DATABASE bduaski.dbc SHARED SET DATABASE TO bduaski С компилировал без ошибок. Запустил. Он ответил: ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2011, 14:03 |
|
|
start [/forum/topic.php?fid=41&msg=37407700&tid=1584180]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 282ms |
total: | 418ms |
0 / 0 |