Чтение онлайн

на главную - закладки

Жанры

Cat W

Шрифт:

– Посему, меняем строки на:

120 IBDatabase1.Params.Add('USER Cats');

130 IBDatabase1.Params.Add('PASSWORD forever');

* А причем здесь коты?

– Ну, у себя ты введешь свои пароли.

* О, у себя, я как всегда напишу…

– Стоп, стоп, стоп! И ни другу, не врагу, никогда не …

* Ладно, я понял.

– * -

* Шеф, усе пропало!!! т.е. не получилось. Появилось угрожающее окно Debugger Exception Notification, со страшной надписью Project Project1.exe raised exception class EIBInterBaseError with message 'unavailable database'. Process stopped. Use Step or Run to continue..

–

Спокойствие, только спокойствие... бывало и у меня такое.

– Для комфортной работы Firebird хочет иметь доступ к своим dll а именно:

gds32.dll

icudt30.dll

icuuc30.dll

и желательно:

firebird.msg

Конечно, лучше всего поместить эту компанию, в папочку WINDOWS\system или WINDOWS\system32, в этом случае, в дальнейшем ни о чем не надо беспокоится, НО если тебе надо показать твою гениальную программу заказчику, (а на его месте я бы не разрешил лазить тебе в системные папки) лучше держать эту свору в демонстрационной папке.

– * -

* У меня проблемы стал копировать dll, а система и говорит файл gds32.dll мол у меня есть только постарее да поменьше, можно ли заменить, ну я слов то не померил, и системе той поверил. А эта Редиска и говорит что она занята, т.е. файл занят.

– Ну, занят файл, значит, занят, мы то ящик покупаем не для собственного удовольствия, а для удовлетворения запросов системы, ну и ладно…

– Ибо сказано: Если у тебя есть фонтан – заткни его, и компьютеру надо отдохнуть…

– Все выключай, и иди погуляй.

«Продолжение следует»

ББД продолжение

– Извини, выключать комп было совершенно не нужно. Достаточно было закрыть Delphi, именно он занимал файл.

* Ладно, проехали. У меня тут как раз возник вопрос. Все сработало, файл базы создался, но на фейсе программы ничего не изменилось.

– Да, вот тут, ты прав. Недоработка. Но, я тоже обдумал… надо ввести изменения.

165 try

170 IBDatabase1.CreateDatabase;

180 IBDatabase1.Connected:=True;

190 IBTransaction1.Active:=True;

192 except

194 ShowMessage('Не нахожу dll');

195 exit;

196 end; // try 

187 FMain.Caption := fn;

198 ShowTables;

200 end;

– Во-первых давай позаботимся о том, чтобы исключительное положение, которое у нас возникло, было бы хоть как ни будь обработано ( строки 165, 192-196).

– Строка 198 выдаст название новой базы в заголовке программы и сообщит что таблиц, в этой базе пока нет.

procedure ShowTables;

begin

 with FMain.ListBox1 do

begin

Clear;

Items.Add('Empty');]

end;

end;

–

Сразу скажу, что процедуру ShowTables мы очень скоро будем существенно менять, посему не буду нумеровать строки…

– * -

* Все сработало, но…

– Да, хвалится пока еще нечем. Надо делать следующий шаг.

Задача: открыть существующую базу данных.

010 procedure TFMain.OpenDB1Click(Sender: TObject);

020 begin

030 with OpenDialog1 do

040 begin

050 Filter := 'DB|*.fdb';

060 DefaultExt := 'fdb';

070 if Execute then

080 with DataModule2 do

090 begin

100 IBDatabase1.DatabaseName:= FileName;

110 IBDatabase1.Params.Clear;

120 IBDatabase1.Params.Add('USER Cats');

130 IBDatabase1.Params.Add('PASSWORD forever');

140 try

150 IBDatabase1.Connected:=True;

160 except

170 ShowMessage('Не могу работать!');

180 exit;

190 end; // try

200 IBTransaction1.Active:=True;

210 FMain.Caption := FileName;

220 ShowTables;

230 end; // DataModule2

240 end; // OpenDialog1

250 end;

– Открываем диалог загрузки файла – стр. 30

– Т.к. этот диалог будет использоваться и в других целях в строках 50, 60 уточняем, что сейчас будет речь идти о базе данных.

– Если в стр. 70 файл базы найден, вводим параметры базы строки 100-130 (обрати внимание пароль и пользователь должен быть тот же, что и при создании базы).

– Наученные опытом в строках 140-190 пытаемся соединится с базой. (обрати внимание на стр. 190 – желательно кончики программных блоков помечать – легче будет разбираться).

* А почему ты изменил 170 строку.

– Искл. состояние может возникнуть не только из-за dll, но и в случае если база будет не родная (не совпадает пароль и др.) т.е. это место надо переписать более тщательно, сделаем это позже.

* Нет ничего более постоянного …

– Согласен, давай изменим строку 160

160 except // в дальнейшем обработать 1. отсутствие dll. 2. несовпадение пароля 3. другие случаи

– Теперь пришла пора для вкусненького.

* Погоди, сбегаю за кетчупом.

– Боюсь, ни клаве ни монитору кетчуп не понравится.

– Открою тебе великую тайну:

– Когда мы создали пустую базу. База там уже есть.

* Я что-то подобное подозревал, файл то не очень маленький.

Поделиться:
Популярные книги

Том 5. Голубая книга

Зощенко Михаил Михайлович
5. Собрание сочинений в семи томах
Проза:
советская классическая проза
5.00
рейтинг книги
Том 5. Голубая книга

Царь Живых

Точинов Виктор Павлович
Фантастика:
ужасы и мистика
6.25
рейтинг книги
Царь Живых

Андер Арес

Грехов Тимофей
1. Андер Арес
Фантастика:
рпг
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Андер Арес

Предок

Грушевський Михайло Сергійович
5.00
рейтинг книги
Предок

Неучтенный элемент. Том 1

NikL
1. Антимаг. Вне системы
Фантастика:
городское фэнтези
фэнтези
5.75
рейтинг книги
Неучтенный элемент. Том 1

Жена со скидкой, или Случайный брак

Ардова Алиса
Любовные романы:
любовно-фантастические романы
8.15
рейтинг книги
Жена со скидкой, или Случайный брак

Государство и революции

Шамбаров Валерий Евгеньевич
Научно-образовательная:
история
7.86
рейтинг книги
Государство и революции

Кукловод

Майерс Александр
4. Династия
Фантастика:
попаданцы
аниме
5.25
рейтинг книги
Кукловод

Синдром

Кейз Джон
Интеллектуальный детектив
Детективы:
триллеры
8.50
рейтинг книги
Синдром

Я и я

Напкинов Кирилл
1.67
рейтинг книги
Я и я

Пламенев. Книга XII

Карелин Сергей Витальевич
12. Пламенев
Фантастика:
аниме
уся
сказочная фантастика
фэнтези
5.00
рейтинг книги
Пламенев. Книга XII

Трилогия «Хроники Сиалы»

Пехов Алексей Юрьевич
3. В одном томе
Фантастика:
фэнтези
9.47
рейтинг книги
Трилогия «Хроники Сиалы»

Чёрный ангел

Клюева Варвара
Детективы:
прочие детективы
7.29
рейтинг книги
Чёрный ангел

Стрела времени (сборник)

Гаррисон Гарри
Мир приключений изд. Правда
Фантастика:
научная фантастика
5.00
рейтинг книги
Стрела времени (сборник)