| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > проблема с Update |
| Автор: psyco 22.4.2010, 21:49 | ||||
| Добрый вечер! Проблема состоит в том, что запрос с использованием Insert работает идеально для меня, а тот самый запрос с Update физически не делает ничего и ошибки не показывает, гад. В моем же случае нужно как раз обновлять данные. Вот рабочий пример запроса с Insert:
Некоторые столбцы я записываю из переменных, некоторые из грида. Таблица при этом заполняется так, как мне надо и все вроде бы отлично, да вот проблема: если я буду постоянно его использовать, все данные будут накапливатся в этой таблице. И потому мне и нужно запросы с UPDATE. Вот я переписал вышеуказанный пример на UPDATE вариант:
При выполнении такого запроса, с таблицей ничего не происходит(по крайней мере я этого не вижу). Может быть дело в том, что я не использую предложение WHERE?Помогите, пожалуйста, буду очень благодарен! |
| Автор: psyco 22.4.2010, 22:11 | ||
Ну хоть выяснил в чем дело,спасибо Вам! А в случае если у меня пустая таблица и Update исполняет роль Insert? Т.е. какое можно задать значение(пустое или всегда true'шное), чтобы Update заполнял все поля таблицы?Заранее спасибо! |
| Автор: DarkProg 22.4.2010, 22:28 | ||||
Update никогда не выполняет роль Insert'a. Если у вас пустая таблица, то тогда у вас Update сработает но не найдя условия при котором выполнится Where поле=значени, ничего обновлять не будет. Проверку на пустоту легко сделать выполнив следующее действие
после этого вы легко можете в зависимости от того пустая у вас таблица или нет выполнять Insert или Update. |
| Автор: Vas 23.4.2010, 07:28 |
| UPDATE без where обновление всех записей таблицы. Нихрена он ничего не ищет, а тупо всем записям присвоит значение указанное в запросе и все. БД какая? Компоненты доступа какие? Как смотрите что запрос не выполняется? После выполнения запроса обновление данных делаете? Транзакции используете? |