Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.05.2008, 19:45   #1
xes
Пользователь
 
Регистрация: 12.05.2008
Сообщений: 12
По умолчанию Перенос программы с БД на бругую машину

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

У меня база данных Access оболочка в дельфи сделана почитал статейку про то как создаеться алиас БД програмно чтото типа нижеследующей статьи.
Присвоил все параметры путь и т.д. Во время подключения пишет ошибку параметров подключения хотя я полность аовторил все параметры которые имеються у таблиц которые я создавал в дельфи через администратор баз данных.

Нужно чтото еще делать кроме создания алиеса для подключения БД и я этого не знаю, или просто гдето ошибаюсь при созданнии аллиеса?

***********
Создаем новый проект.
Располагаем на форме следующие компоненты: - TDatabase, TQuery, TDataSource, TDBGrid, and TButton.
Дважды щелкаем на компоненте TDatabase или через контекстное меню (правая кнопка мыши) вызываем редактор базы данных.
Присваиваем базе данных имя 'MyNewAlias'. Это имя будет выполнять роль псевдонима в свойстве DatabaseName для компонентов типа TTable, TQuery, TStoredProc.
Выбираем в поле Driver Name (имя драйвера) пункт INTRBASE.
Щелкаем на кнопке Defaults. Это автоматически добавляет путь (PATH=) в секцию перекрытых параметров (окно Parameter Overrides).
SERVER NAME=IB_SERVEER:/PATH/DATABASE.GDB
USER NAME=MYNAME
OPEN MODE=READ/WRITE
SCHEMA CACHE SIZE=8
LANGDRIVER=
SQLQRYMODE=
SQLPASSTHRU MODE=NOT SHARED
SCHEMA CACHE TIME=-1
PASSWORD=

Устанавливаем следующие параметры
SERVER NAME=C:\IBLOCAL\EXAMPLES\EMPLOYEE.G DB
USER NAME=SYSDBA
OPEN MODE=READ/WRITE
SCHEMA CACHE SIZE=8
LANGDRIVER=
SQLQRYMODE=
SQLPASSTHRU MODE=NOT SHARED
SCHEMA CACHE TIME=-1
PASSWORD=masterkey

В компоненте TDatabase свойство LoginPrompt устанавливаем в 'False'. Если в секции перекрытых параметров (Parameter Overrides) задан пароль (ключ PASSWORD) и свойство LoginPrompt установлено в 'False', при соединении с базой данный пароль запрашиваться не будет. Предупреждение: при неправильно указанном пароле в секции Parameter Overrides и неактивном свойстве LoginPrompt вы не сможете получить доступ к базе данных, поскольку нет возможности ввести правильный пароль - диалоговое окно "Ввод пароля" отключено свойством LoginPrompt.
Нажимаем кнопку OK и закрываем окно редактора.
В компоненте TQuery свойству DatabaseName присваиваем 'MyNewAlias'.
В компоненте TDataSource свойству DataSet присваиваем 'Query1'.
В компоненте DBGrid свойству DataSource присваиваем 'DataSource1'.
Создаем в компоненте TButton обработчик события OnClick.
*************
xes вне форума Ответить с цитированием
Старый 12.05.2008, 20:05   #2
Veiron
Форумчанин
 
Аватар для Veiron
 
Регистрация: 01.12.2007
Сообщений: 346
По умолчанию

Вот только что по соседству про переносимость писал )
Win 10 x64 | VS 2015 | MSSQL 2014
autovestitv.ru
Veiron вне форума Ответить с цитированием
Старый 13.05.2008, 21:27   #3
xes
Пользователь
 
Регистрация: 12.05.2008
Сообщений: 12
По умолчанию

Проблемы с подключением подсказали как через АДО подключиться подключился но дальше дело не пошло.
Подключил я АДО таблицы Запросы чтобы не переписывать прогу удалил обычные запросы и переименовал АДО таблицы в Table1, 2, 3 теперь запускаю прогу. Соеденяеться все окей при попытке открытия, чтения файла, а по сути там идет занесение информации в БД выдает ошибку:
Project Project1.exe raised exception class EOleException with message 'Hecooтвeтcтвиe типoв дaнныx в
выpaжeнии ycлoвия oтбopa'
и еще по какимто причинам DataModule1.Table1.Open, по всей программе Table1 подчеркнуто красным хотя все запускаеться.

Так же неполучилось подключиться через АДО когда задал пароль для БД говрит база либо не найдена либо открыта и с нею работают в монопольном режиме хотя асес закрыл.

2)Попытался подключить через Databese по принципу изложенному в выше указанной статье, вот с такими параметрами почемуто не выходит.
DATABASE NAME=E:\p3\xesdb.mdb
USER NAME=admin (или не чего не писал)
ODBC DSN=xesdb
OPEN MODE=READ/WRITE
BATCH COUNT=200
LANGDRIVER=
MAX ROWS=-1
SCHEMA CACHE DIR=E:\p3\
SCHEMA CACHE SIZE=8
SCHEMA CACHE TIME=-1
SQLPASSTHRU MODE=SHARED AUTOCOMMIT
SQLQRYMODE=
ENABLE SCHEMA CACHE=FALSE
ENABLE BCD=FALSE
ROWSET SIZE=20
BLOBS TO CACHE=64
BLOB SIZE=32
PASSWORD=

Последний раз редактировалось xes; 13.05.2008 в 21:30.
xes вне форума Ответить с цитированием
Старый 14.05.2008, 10:24   #4
D-mon
Форумчанин
 
Регистрация: 22.06.2007
Сообщений: 414
По умолчанию

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

В одном случае надо поставить клиента управления БД.
В другом всё и так будет работать.

Сделай методом научного тыка и посмотришь что будет.

По-любому на машине на которую ты будешь переносить должен стоять ИнтерБэйс. Видно с кода.
Нет невыполнимых задач, всё дело времени...
D-mon вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перенос строк Yuran Общие вопросы Delphi 5 15.07.2008 23:11
Я КУПИЛ МАШИНУ!!! dron-s Свободное общение 18 06.06.2008 13:11
Почему не работает?? (Перенос программы на другой компьютер) HunterMan Win Api 9 04.06.2008 01:31
Перенос IPB Mixxer99 PHP 2 27.03.2008 11:15
Перенос EXE на другую машину tihon_65 Общие вопросы Delphi 12 21.02.2007 15:00