Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[52.15.59.163] |
|
Сообщ.
#1
,
|
|||||
|
Delphi 7.0 / Paradox 7 Есть две таблицы: 1) men m_id: autoinc m_name: alpha 2) results r_manid: integer(lookup field - men.m_id) result_1: integer ... Есть Query1, который объединяет поля обоих таблиц, всё это отображается потом в DBGrid1. Необходимо, чтобы можно было просматривать, вставлять и удалять записи. Для всех выше описанных действий использую два TUpdateSQL - UpdateMen и UpdateResults. Query1.UpdateObject ничего не указываю, а делаю так:
С просмотром и удаление проблем нет, а вот с вставкой есть! Понятно, что надо сначала вставлять запись в men, получать m_id и и только тогда вставлять запись в results. А вот его-то получить ну никак не удаётся. У поля есть св-во AutoGenerateValue - с ним тоже ничего не получается. В помощи сказано:
Как я понял m_id не должно быть ключевым, но и это не помогает. Установка Query.AutoRefresh = true и даже программный Query.Refresh не помогают. Так что же разорвёт эту проблему в пух и прах??? Всем заранее спасибо, т.к. я уже даже не могу представить способа это сделать , кроме как работать с DataSet напрямую(AppendRecord(...), Post) |
Сообщ.
#2
,
|
|
|
я бы сделал одну таблицу и не парился .
Номер новой записи ты сможещь узнать тока после вставки ............... |
Сообщ.
#3
,
|
|
|
Нельзя! Потому что у одного человека может быть несколько результатов.
Так не повторяется лишняя личная информация о каждом человеке и сами результаты отслеживать эффективней, например из изменение во времени. |
Сообщ.
#4
,
|
|
|
При инициализации Database приватному полю FSQLBased TQuery
(его значение можно получить функцией IsSQLBased) присваивается значение false, если название драйвера STANDART. Похоже, что св-во AutoGenerateValue поля работает только, если FSQLBased = true(стоит условие if isSQLBased then ), т.е. не для стандартного драйвера. Для св-ва Refresh Query также. Если хотите, посмотрите DBTables.pas |