![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TUpdateQuery [D6, Paradox]
VikOss © (2002-10-23 17:51:00)Задал все нужные запросы на редактирование, добавление и удаление. Но пишет ошибку "Update failed"
VikOss (2002-10-24 13:31:00) [1]Я уже как пытаюсь ето делать. Спасибо.
ЮЮ (2002-10-24 13:28:00) [2]Сорри, Тогда создай индекспо полю сортировки , это никогда не поздно. При этом, говорят, и TQuery c order by становится редактируемым.
VikOss (2002-10-24 13:25:00) [3]>ЮЮ
Поздно. База уже работала (без сортировки)и в ней 3000 записей. Всё работает на SQL запросах, НУ НЕПРЕДУСМОТРЕЛ Я ЕТУ СОРТИРОВКУ! А счас мучаюсь.
ЮЮ (2002-10-24 13:08:00) [4]Тогда создай ключ по полю сортировки и используй для сортировки его и свою любимую TTable, а TQuery + TUpdateSql оставь специалистам :-)
VikOss (2002-10-24 12:57:00) [5]Вообщето мне пофиг, но с ключами не хотелось путаться в простой базе, да и задача вроде несложная-просто редактировать(добавить,удалить,изменить)записи после SQL запроса ORDER BY и всё. База уже давно работает, только сортировки небыло , И ВОТ ПРИЕХАЛ ! Когдато такой вопрос был на форуме, но его удалили :0(
Сначала база редактировалась просто : Query.Append,.Delete,.Edit. Но ето перестало работать после етой самой сортировки !
MsGuns (2002-10-24 12:55:00) [6]>Alexandr © (24.10.02 12:37)
>2MSGuns: Насколько я помню... хотя точно не уверен, но прийдут другие - они расскажут, вообщем готовь на всякий случай вазелин.
Уточняю,- речь идет о запросе, невозвращающем НД (ExecSQL)
А баночка готова завсегда, не изволь беспокоиться. Хотя тебе как раз это и не грозит, как я понял.. q:))))
Alexandr (2002-10-24 12:50:00) [7]а первичный ключ добавить религия не позволяет?
VikOss (2002-10-24 12:46:00) [8]> ЮЮ
Именно база данных, пускай простая, НО ИМЕННО БАЗА! Интерфейс, сортировки, фильтры, отчёты и т.д...
Alexandr (2002-10-24 12:45:00) [9]в цикле или отдельным запросом.
VikOss (2002-10-24 12:43:00) [10]Хорошо, а если мне действительно нужно удалить несколько записей, удовлетворяющих этому условию ?
ЮЮ (2002-10-24 12:42:00) [11]>Во первых: ключей нету, там архитектура простая(таблицы не взаимосвязаны, просто хранилище инфы)
Тогда оставь в покое Базы данных. Используй Zip - архив в качестве хранилища. И компактней, и пароль поставить можно
Alexandr (2002-10-24 12:37:00) [12]значит у тебя как минимум 2 записи или наоборот, ниодной записи, удовлетворяющей устовию в delete
вот и вся проблема...
P.S. А ключ всегда желательно иметь, пусть даже и синтетический.
2MSGuns: Насколько я помню... хотя точно не уверен, но прийдут другие - они расскажут, вообщем готовь на всякий случай вазелин.
VikOss (2002-10-24 12:31:00) [13]Во первых: ключей нету, там архитектура простая(таблицы не взаимосвязаны, просто хранилище инфы)
Во вторых: база локальная, поэтому только один юзер пашет в данный момент времени.
MsGuns (2002-10-24 11:42:00) [14]Прошу заранее прощения за, возможно, глупый вопрос
Дело в том, что в Paradox (3 и 4 точно) требует для запросногоудаления чтобы таблицу никто не редактировал. Может, все дело именно в ТАКОЙ блокировке ? Т.е. для удаления запросом (QBE или SQL) таблица Paradox должна быть в состоянии "Только чтение" для остальных юзеров.
Если неправ, то баночка с вазилином наготове 8))
fnatali (2002-10-24 10:44:00) [15]Удаляй по первичному ключу и проблем не будет
DELETE FROM Table_name WHERE id=:id
VikOss (2002-10-24 10:27:00) [16]Я вообще запись просто попробовал удалить. Вызов:
UpdateSQL.Exec(rnDelete);
Запрос:
DELETE FROM Table_name WHERE Name_Field="__"
Alexandr (2002-10-24 07:10:00) [17]или менее одной...
fnatali (2002-10-24 06:50:00) [18]Скорее всего здесь имеет место быть попытка обновления более чем одной записи. Первичный ключ есть? Тексты запросов в UpdateSQL приведи и структуру обновляемой таблицы.
VikOss (2002-10-23 19:00:00) [19]Таблицы работали без UpdateQuery, просто нужна была сортировка SQL-запросом , а он понятное дело потом не даёт редактировать табл. Я SQL правильно задал-он сначала сделает что надо а потом уже эта ошибка вылезает. Я толком незнаю как вообще правильно юзать етот UpdateQuery. А Databasename мне вообще не нужен я пользуюсь компонентом, который без BDE позволяет работать, но он ни причём, таблы хорошо видны и юзаются, всё дело именно в UpdateQuery я им никогда не пользовался.
MsGuns (2002-10-23 18:39:00) [20]>VikOss (23.10.02 17:51)
>Задал все нужные запросы на редактирование, добавление и удаление
Раз вылетает, то невсе. Нужно подробнее.
Попутно:
-как юзаются таблицы (что указано в Databasename) ?
-ссылки на UpdateQuery в TQuery стоят правильные ?
-SQL-запросы без ошибок ?
и т.д.