Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 13.05.2010, 09:52   #1
Masip
Пользователь
 
Регистрация: 02.06.2009
Сообщений: 32
По умолчанию Обновление БД

Здравствуйте!не получается обновить БД созданную в Access.
Вот код:
Query.Active:=false;
Query.SQL.Clear;
sql:= 'update userName set reg = 1 where userName.id = :iduser';
Query.SQL.Text:=sql;
Query.Parameters.ParamByName('iduse r').Value:= IDUser;
Query.Active:=True;
При компиляции выдает ошибку:


Помогите пожалуйста!

Последний раз редактировалось Masip; 13.05.2010 в 10:39.
Masip вне форума
Старый 13.05.2010, 10:04   #2
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,210
По умолчанию

Код:
Query.Active:=false;
Query.SQL.Clear;
Query.SQL.Text:='update userName set reg = 1 where userName.id = :iduser';
Query.Parameters.ParamByName('iduser').Value:= iduser;
Query.Active:=True;
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума
Старый 13.05.2010, 10:11   #3
Masip
Пользователь
 
Регистрация: 02.06.2009
Сообщений: 32
По умолчанию

Delphi выдает все ту же ошибку!
Masip вне форума
Старый 13.05.2010, 10:25   #4
danekne
Форумчанин
 
Регистрация: 12.02.2007
Сообщений: 360
По умолчанию

ммм... А если так?
Код:
Query.Active:=false;
Query.SQL.Clear;
Query.SQL.add('update userName');
Query.SQL.add('set reg = 1');
Query.SQL.add('where userName.id = :iduser'');
Query.Parameters.ParamByName('iduser').Value:= iduser;
Query.Active:=True;
danekne вне форума
Старый 13.05.2010, 10:34   #5
Masip
Пользователь
 
Регистрация: 02.06.2009
Сообщений: 32
По умолчанию

Все без изменений!а может быть проблема в том что я уже посылал запрос в БД для аутентификации пользователя???
Masip вне форума
Старый 13.05.2010, 14:39   #6
Andrei
Форумчанин
 
Регистрация: 20.06.2007
Сообщений: 270
По умолчанию

Код:
Query.Active:=false;
Query.SQL.Clear;
Query.SQL.Text:='update userName set reg = 1 where userName.id = :iduser';
Query.Parameters.ParamByName('iduser').Value:= iduser;
//Query.Active:=True;
Query.ExecSql;
//а дальше создаем запрос на получение данных, например
Query.SQL.Clear;
Query.SQL.Text:='SELECT * FROM userName ;
//и вот тут можно использовать
Query.Active:=True;
[/QUOTE]

Вообще-то компонент Query предназначен для получения данных из БД.
Команды Update,Delete,Insert ни каких данных из БД не получают, а только передают серверу команду на изменение таблиц. На это дельфи и ругается. Для них можно воспользоваться специальным компонентом ADOCommand или, как я написал в примере выполнить ExecSQL, не активируя кверик.
-Кукушка, кукушка! Накукуй мне сто лет!
-А накукуй тебе столько?

(с) Библия. Вольный перевод с древнееврейского.
Andrei вне форума
Старый 16.05.2010, 07:56   #7
Masip
Пользователь
 
Регистрация: 02.06.2009
Сообщений: 32
По умолчанию

Спасибо!все работает!
Masip вне форума
Старый 29.06.2010, 07:25   #8
Ал3
Новичок
Джуниор
 
Регистрация: 29.06.2010
Сообщений: 2
По умолчанию

Привет, ребят! Подскажите как сделать так чтоб табличка обновлялась значениями из др 2х таблиц в АССЕССе?
пишу запрос

UPDATE СводТабл
SET Количество = (select Количество from ПрихТабл where Наименование=Forms!РасхФорм!Наимено вание and Модель=Forms!РасхФорм!Модель) - (select Количество from РасхТабл where Наименование=Forms!РасхФорм!Наимено вание and Модель=Forms!РасхФорм!Модель)
WHERE exists (select Количество from СводТабл where Количество > 1);

Говорит "operation must use an updateable query"????
вроде как и база открыта правильно,...
Ал3 вне форума
Старый 29.06.2010, 07:40   #9
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,210
По умолчанию

Ал3, одна тема - один вопрос. Закрываю.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обновление 313131 Помощь студентам 0 05.03.2010 18:52
Обновление Boris96_2007 Общие вопросы Delphi 3 14.04.2009 23:15
Обновление ПО [Smarik] Общие вопросы Delphi 3 02.02.2009 09:00
Обновление книги zakharru Microsoft Office Excel 6 19.06.2008 04:50