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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.12.2010, 20:19   #1
Himikat
 
Регистрация: 25.12.2010
Сообщений: 5
По умолчанию БД в Delphi

Есть БД в Delphi. Есть кнопка, которая добавляет записи, я пытаюсь редактировать их (редактирование\удаление), но выскакивает ошибка: Не удается найти строку для обновления. Некоторые значения могли быть изменены со времени ее последнего чтения.
НО если я закрою потом открою программу, все нормально работает, такая проблема только с автоматически добавленными записями, если вручную создаю, все редактируется нормально.
Работаю через ADO
PHP код:
procedure TBD.Button1Click(SenderTObject);
var
   
MyListTStringList;
   
MyRegistryTRegistry;
   
iInteger;
   
Str1Str2Str3StrYStrMStrDstring;
begin
     MyRegistry
:=TRegistry.Create;
     
MyList:=TStringList.Create;
      
with MyRegistry do
       
begin
        RootKey
:=HKEY_LOCAL_MACHINE;
         if 
OpenKey('Software\Microsoft\Windows\CurrentVersion\Uninstall',
          
False)=True then GetKeyNames(MyList);
          
CloseKey;
         for 
i:=0 to MyList.Count-do
          
begin
           RootKey
:=HKEY_LOCAL_MACHINE;
           
OpenKey('Software\Microsoft\Windows\CurrentVersion\Uninstall\'+
           MyList[i], False);
           Str1:=ReadString('
DisplayName');
           Str2:=ReadString('
DisplayVersion');
           Str3:=ReadString('
InstallDate');
           StrY:=copy(Str3, 0, 4);
           StrM:=copy(Str3, 5, 2);
           StrD:=copy(Str3, 7, 2);
           if Str1<>'' then
            begin
             DataModule1.DataSourcePO.DataSet.Insert;
             EditPO.DBEdit1.Text:='
&#205;åòáóóê';
             
EditPO.DBEdit2.Text:=Str1;
             
EditPO.DBEdit3.Text:=Str2;
             if 
Str3='' then
              begin
              end
              
else
              
begin
               EditPO
.DBEdit5.Text:=StrD+'.'+StrM+'.'+StrY;
              
end;
            
end;
           
CloseKey;
           
DataModule1.ADOTablePO.Edit;
         
end;
       
end;
end
Удаляю так:
PHP код:
  DataModule1.ADOTable.Delete
Редактирую так:
PHP код:
 if DataModule1.ADOTable.Modified then
  DataModule1
.ADOTable.Post
В чем может быть проблема?
Himikat вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
На Delphi 7 сделать игру кто хочет стать миллионером в delphi 7 666dart666 Помощь студентам 11 04.11.2010 17:57
Rad Studio 2011 XE: новое в Delphi, C++ Builder, RadPHP и Delphi Prism savva-paladin Софт 18 02.10.2010 20:24
Delphi. Как нарисовать в Delphi два движущиеся шара с определенной скоростью? redred Общие вопросы Delphi 10 11.12.2007 10:43
Как открыть БД, написанную в Delphi если нf другой машине Delphi нет? dagarik БД в Delphi 7 22.10.2007 17:54
не StringGrid1.Cells[1,1]:='Delphi'; а вот так SG1.C[1,1]:='Delphi' Nemesisking Компоненты Delphi 7 08.09.2007 03:27