Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 15 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 28.01.2009, 14:05   #1
KrPr
Пользователь
 
Регистрация: 27.01.2009
Сообщений: 18
Репутация: 10
Вопрос

Скиньте пожалуста пример рабочего проекта под Firebird, (чтение, запись, удаление записей в базе). чем проще проект тем лучше, хочется выяснить в чем ошибка в моем проекте, тема "зависание клиена Firebird ". Плз. не надо отправлять на борландовские примеры или говорить - "там все написано".

Жалко всем))))) Ладно написал свой макимально простой, посмотрите в чем ошибка: если запустить один клиент то все работает если 2 - то выдает ошибку. http://pr3.narod.ru/prkt.zip (200 кб).
2) Можно ли както сделать так чтобы проходило сохранение в базу при выполнении любой операции. Например я вношу данные в проге добавил N записей. А ей что либо не понравилось она выдала ошибку процесс завершаем, данные внесеные потеряны. Как их сохранять?

Последний раз редактировалось Stilet; 09.02.2015 в 21:08.
KrPr вне форума   Ответить с цитированием
Старый 29.01.2009, 18:23   #2
Rik
Форумчанин
 
Аватар для Rik
 
Регистрация: 28.07.2007
Адрес: Урал
Сообщений: 359
Репутация: 277
По умолчанию

Ндаа...
Во первых, не пренебрегайте первичными ключами.
Во вторых, не используйте IBQuery, используйте IBDataSet.
В третьих, у вас нигде нет Commit. Транзакции должны подтверждаться либо откатываться.
В процедуре Rec_Add должно быть Form1.IBTaransaction1.Commit после добавления записи, или после вставки всех записей, вы должны подтвердить транзакцию...
В редакторе компонента IBTransaction1 уберите что я вам раньше рекомендовал, оставьте пустое поле, будет лучше.
Rik вне форума   Ответить с цитированием
Старый 04.02.2009, 09:58   #3
KrPr
Пользователь
 
Регистрация: 27.01.2009
Сообщений: 18
Репутация: 10
По умолчанию

Смотрел, пробовал, менял, читал, ситуация не поменялась.
Таким стал пример после всех модификаций. http://pr3.narod.ru/prkt2.zip (120 кб)
Елементарый пример и тот не работает(((.

Попробовал запустить на другом компе. Проект выдает ошибку Dead lock. Cудят по количеству просмотров и ответов я не в форуп пишу а в блог, не ужели из более чем 300 человек просмотревших тему ни кто не знает и не может предположить что подсказать. Ясно что дело в транзакциях но что с ними делать?

Последний раз редактировалось Stilet; 09.02.2015 в 21:09.
KrPr вне форума   Ответить с цитированием
Старый 06.02.2009, 15:20   #4
soleil@mmc
SQL-коддинг
Профессионал
 
Регистрация: 16.01.2009
Сообщений: 1,192
Репутация: 601
По умолчанию

Цитата:
Сообщение от KrPr Посмотреть сообщение
Попробовал запустить на другом компе. Проект выдает ошибку Dead lock. ... Ясно что дело в транзакциях но что с ними делать?
почитать про транзакции
ибо дэд_лок от того что одна транзакция при чтении заблокировала запись, которую другая транзакция пытается изменить
soleil@mmc вне форума   Ответить с цитированием
Старый 06.02.2009, 23:16   #5
Rik
Форумчанин
 
Аватар для Rik
 
Регистрация: 28.07.2007
Адрес: Урал
Сообщений: 359
Репутация: 277
По умолчанию

http://visualtech.townnet.ru/files/prkt2.rar
- так должно быть лучше и всё таки вместо IBQuery используйте IBDataSet,
там в одном флаконе и InsertSQL и UpdateSQL и DeleteSQL и SelectSQL и RefreshSQL.

Перед компиляцией исправьте путь к базе данных в IBDatabase1...

Последний раз редактировалось Rik; 06.02.2009 в 23:18.
Rik вне форума   Ответить с цитированием
Старый 09.02.2009, 11:23   #6
KrPr
Пользователь
 
Регистрация: 27.01.2009
Сообщений: 18
Репутация: 10
По умолчанию

Rik - Спасибо большое. Очень хороший ответ.
KrPr вне форума   Ответить с цитированием
Старый 09.02.2015, 20:27   #7
wsx_prog
Новичок
 
Регистрация: 09.02.2015
Сообщений: 3
Репутация: 10
По умолчанию

Rik, можете перезалити архів?
wsx_prog вне форума   Ответить с цитированием
Старый 09.02.2015, 20:38   #8
Iron Monk
Форумчанин
 
Аватар для Iron Monk
 
Регистрация: 05.10.2007
Сообщений: 478
Репутация: 335
По умолчанию

Цитата:
Сообщение от wsx_prog Посмотреть сообщение
Rik, можете перезалити архів?
Вы так уверены, что он его шесть лет хранил?
Iron Monk вне форума   Ответить с цитированием
Старый 09.02.2015, 20:47   #9
wsx_prog
Новичок
 
Регистрация: 09.02.2015
Сообщений: 3
Репутация: 10
По умолчанию

а раптом)) в мене ще є проекти з коледжа. Мені потрібно простий приклад для роботи з записами.
wsx_prog вне форума   Ответить с цитированием
Старый 09.02.2015, 22:23   #10
Rik
Форумчанин
 
Аватар для Rik
 
Регистрация: 28.07.2007
Адрес: Урал
Сообщений: 359
Репутация: 277
По умолчанию

Цитата:
Сообщение от wsx_prog Посмотреть сообщение
Rik, можете перезалити архів?
Я могу новый изготовить, только под Lazarus и с собственной модифицированной версией IBX, но это будет через пару дней, как приеду с командировки... Напишите, если устраивает и ждать будете...
__________________
http://www.visual-t.ru
Rik вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Firebird vs Delphi HELP! paSHIZ БД в Delphi 4 13.01.2009 13:19
FireBird Д'якон БД в Delphi 2 04.12.2008 12:15
FireBird 1.5.4 Nikola__ БД в Delphi 2 17.11.2008 15:42
TSQLConnection и FireBird Abercrombie БД в Delphi 5 12.02.2008 15:11


00:31.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru