![]() |
|
|
![]()
|
|
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
Суть вопроса: есть таблица для ввода анкет. На форме - соответствующие DB-контролы: DbEdit, DbCheckBox и т.п. - в них вводятся ответы на вопросы. После того, как анкета заполнена - нужно, соответственно, забивать следующую анкету, т.е. следующую строчку таблицы. Вопрос: как программно создать новую строку таблицы, дабы с помощью DbEdit'ов и прочих контролов её заполнять?
-------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| ~FoX~ |
|
||||
![]() НЕ рыжий!!! ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2819 Регистрация: 8.10.2003 Где: Зеленоград Репутация: 4 Всего: 68 |
Эгм, DataSet переводим в Insert mode, например TTable.Append, или Insert
Апосля не забываем делать Post Но ИМХО, не очень правильный вариант работы с БД, ибо юзер сусчество человеческое и может во время набора может ошибица, или вообще посередине ему надоест и он нажмет на крестик, тебе придется отлавливать все исключения БД... Лучше все таки сначала заполнить поля, проверить на корректность, а уже затем помещать данные в таблицу... Это сообщение отредактировал(а) ~FoX~ - 13.10.2010, 16:27 |
||||
|
|||||
| Данкинг |
|
||||||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
В смысле - вместо DbEdit ставить Edit, а затем уже вручную делать .post в соответствующие поля? Добавлено через 1 минуту и 40 секунд
Кстати, не прокатит в данном случае. Ты так предлагаешь:
? -------------------- There's nothing left but silent epitaphs. |
||||||
|
|||||||
| ~FoX~ |
|
||||
![]() НЕ рыжий!!! ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2819 Регистрация: 8.10.2003 Где: Зеленоград Репутация: 4 Всего: 68 |
Ну как вариант.... Почему не проканает? Во первых почему BOF, Append добавляет новую строку в конец
Во вторых заненадобностью оно вообще... Гляди, ты создал новую пустую запись, если не использовать например транзакции, то эта запись попадает тебе в монопольный доступ.... Т.е. пока ты не сделаешь Post или не отменишь Append ты даже с нее перейти ни куда не сможешь. |
||||
|
|||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
Склоняюсь всё же к этому варианту... Хоть и заколебёшься прописывать все поля, зато точно знаешь, что все значения будут сохранены. Потому что там ерунда получается. Честное слово, не знаю, как объяснить, это надо видеть. Ну да, EOF, не знаю, с чего я про BOF вспомнил.
Да, тут тоже верно. В общем, если ещё голоса за Edit вместо DbEdit будут, то остановлюсь на этом варианте. Это сообщение отредактировал(а) Данкинг - 13.10.2010, 18:25 -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| ~FoX~ |
|
|||
![]() НЕ рыжий!!! ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2819 Регистрация: 8.10.2003 Где: Зеленоград Репутация: 4 Всего: 68 |
Если честно я как то отошел от программирования БД через методы контролов и перешло на dbGo, ADO и ежесними...
SQL все таки работает по веселее чем Post, да и большенство мороки по отловли ексепшенов ложица не на твои плечи, а на провайдер А дальше SELECT, INSERT INTO, DELETE и т.д. и все прелести SQL у тебя под рукой...
|
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
ОК, будем смотреть в направлении запросов.
-------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| Frees |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2233 Регистрация: 2.12.2005 Где: Екатеринбург Репутация: 23 Всего: 54 |
не надо так запросы собирать, кто знает что там в Edit1 напишут, лучше так
ИМХО я бы не стал отказываться от DB контролов. -------------------- Кольцов Виктор Владимирович |
||||
|
|||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |