Главная Главная страница форума Регистрация Вход
Новые сообщения Участники форума Правила форума Поиск
Страница 1 из 11
Модератор форума: Admin, stalker 
Форум » Все о Delphi » Базы данных » Обновление базы (Обновление базы)
Обновление базы
жекаДата: Понедельник, 02.02.2009, 02:28 | Сообщение # 1
Ранг 3
Группа: Проверенные
Сообщений: 26
Награды: 0
Репутация: 1
Статус: Offline
вот что то не получается обновление записи.В DBLookupComboBox1 и DBLookupComboBox2 данные в таблице а в Memo1 данные для замены ниже мой код, можете подсказать где ошибка, при компиляции ошибок не выдает!

Code

  if (label1.Caption='Смена пароля.')  then begin
   pass.Sql.clear;
pass.SQL.Add('UPDATE пользователи set Название='''+form1.DBLookupComboBox1.Text+''', фио='''+Form1.DBLookupComboBox2.Text+''' WHERE Пароль='''+Memo1.Text+'''');
pass.ExecSQL;
 
AdminДата: Понедельник, 02.02.2009, 10:45 | Сообщение # 2
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
А мы не так выполняли запрос. Я не сильно с базами данных знаком, но вот:
Quote
Query.Open;

Может поможет. А так вроде бы все нормально. А база активирована?


Не оказываю помощь через личные сообщения и ICQ
 
жекаДата: Вторник, 03.02.2009, 03:56 | Сообщение # 3
Ранг 3
Группа: Проверенные
Сообщений: 26
Награды: 0
Репутация: 1
Статус: Offline
да активна, все равно не помогает вот как бы мой полный код

Code

procedure TForm8.ImageButton2Click(Sender: TObject);
begin
if (label1.Caption='Восстановление пароля.')  then begin
pass.Sql.clear;
pass.SQL.Add('INSERT INTO восстановление (фио,кафедра,причина)');
pass.SQL.Add('VALUES ('''+form1.DBLookupComboBox2.Text+''','''+Form1.DBLookupComboBox1.Text+''','''+Memo1.Text+''')');
pass.ExecSQL;
close;
end ;
  if (label1.Caption='Смена пароля.')  then begin
  pass.Sql.clear;
pass.SQL.Add('UPDATE пользователи set Название='''+form1.DBLookupComboBox1.Text+''', фио='''+Form1.DBLookupComboBox2.Text+''' WHERE Пароль='''+Form8.Memo1.Text+'''');
pass.ExecSQL;
close;
end;
if (label1.Caption='Отчет об ошибках.')  then begin
pass.Sql.clear;
pass.SQL.Add('INSERT INTO ошибки (фио,кафедра,ошибка)');
pass.SQL.Add('VALUES ('''+form1.DBLookupComboBox2.Text+''','''+Form1.DBLookupComboBox1.Text+''','''+Memo1.Text+''')');
pass.ExecSQL;
close;
end ;
end;

все работает кроме смены пароля (UPDATE), что делать не пойму

 
AdminДата: Вторник, 03.02.2009, 11:13 | Сообщение # 4
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
А трассировкой не пробовал прогнать? на каком именно месте вылетает. Может быть не при выполнение запроса.

Не оказываю помощь через личные сообщения и ICQ
 
жекаДата: Вторник, 03.02.2009, 12:55 | Сообщение # 5
Ранг 3
Группа: Проверенные
Сообщений: 26
Награды: 0
Репутация: 1
Статус: Offline
да дело в том что запрос нормально ошибку не выдает, просто обновление базы не происходит то есть поле "Пароль" не меняется, как было одно значение так оно и остается.
 
AdminДата: Вторник, 03.02.2009, 14:18 | Сообщение # 6
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
Значит неверен запрос. smile
Слушай а разве ты его меняеш?
Code
'UPDATE пользователи set Название='''+form1.DBLookupComboBox1.Text+''', фио='''+Form1.DBLookupComboBox2.Text+''' WHERE Пароль='''+Form8.Memo1.Text+''''

Тут написано установить название = тому-то тому-то, где пароль равен такой-то. Я прав?


Не оказываю помощь через личные сообщения и ICQ
 
жекаДата: Вторник, 03.02.2009, 22:39 | Сообщение # 7
Ранг 3
Группа: Проверенные
Сообщений: 26
Награды: 0
Репутация: 1
Статус: Offline
да все правльно просто что то логало ща все работает)))
 
Форум » Все о Delphi » Базы данных » Обновление базы (Обновление базы)
Страница 1 из 11
Поиск:

Copyright DelphiDevelop.ru © 2008-2018
Хостинг от uCoz