![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблемы с изменением таблицы [D6, dBase, FoxPro]
Jackal22 © (2002-11-27 11:21:00)Есть талица dBase к которой я подключаюсь с помощью TQuery.
При Query1.Insert возникает ошибка
Cannot modify a read-only dataset.
Как с зтим боротся?
Всем зарание спасибо!!!!
Max Zyuzin (2002-11-27 13:28:00) [1]>Jackal22 © (27.11.02 13:02)
Почитай help про кешированные обновления, а потом воспользуйся советом exit (27.11.02 13:16), и в Query можно будет применять методы Insert, Edit....
exit (2002-11-27 13:16:00) [2]Уф... Все это вставь в TUpdateSQL (я же сказал уже).
У TQuery есть свойство UpdateObject (published). Выбери там свой TUpdateSQL и... Edit, Insert, Append, Post, Delete ...
Jackal22 (2002-11-27 13:02:00) [3]No Problem.
Так и сделал, я просто думал может че иное попроще есть,
типа TTable-овских методов.
exit (2002-11-27 12:44:00) [4]Сколько фатализма... Какие проблемы то, не пойму.
InsertSQL: INSERT INTO TABLE (ID, NAME,...) VALUES (:ID, NAME,...)
UpdateSQL: Update Table SET NAME = NAME WHERE ID = :ID
DeleteSQL: Delete From Table WHERE ID = :ID
Jackal22 (2002-11-27 12:39:00) [5]Всем спасибо за помощь.
Придется наверное править при помощи языка SQL. Как я понял других способов НЕТ.
exit (2002-11-27 12:19:00) [6]
> Используй TTable, у него есть методы Inert, Edit и Post.
> А если хочешь все-таки через TQuery, то луше используй SQL
> язык:
Караул, помогите! Кто отнял все эти чудо методы у TQuery?
Valeron (2002-11-27 12:14:00) [7]Используй TTable, у него есть методы Inert, Edit и Post. А если хочешь все-таки через TQuery, то луше используй SQL язык:
для добавления записи
INSERT INTO name-table(field1,field2,...,fieldn)
VALUE (value1,value2,...,valuen")
для изменения записи
UPDATE name-table
SET field1=...,
WHERE field2=...
для удаления
DELETE FROM name-table
WHERE field1=...
Все это вызывается методом ExecSQL
Jackal22 (2002-11-27 11:43:00) [8]>stone. RequestLive=true установлено но вот результат тотже.
exit (2002-11-27 11:26:00) [9]Да, видимо нужно заготовить себе шаблоны с ответами для тех, кому сложно нажать F1.
На каком основании будет делаться Insert, если SQL в Query берет данные из нескольких таблиц? Нужно подключить к Query TUpdateSQL, написать в нем коды для всех случаев: Insert, Update...etc
stone (2002-11-27 11:23:00) [10]Установи RequestLive=true