Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.11;
Скачать: CL | DM;

Вниз

Неполучается сделать update записи.   Найти похожие ветки 

 
Леонид   (2005-06-02 13:16) [0]

Это код UpdateSQL, ModifySQL

update pribor
set
 RN = :RN,
 NomerPP = :NomerPP,
 Naimen = :Naimen,
 Tip = :Tip,
 Predel = :Predel,
 NomerZ = :NomerZ,
 DataPov = :DataPov,
 DataNext = :DataNext,
 Inventar = :Inventar,
 Ceh = :Ceh,
 Mesto = :Mesto,
 Prim = :Prim
where
 RN = :OLD_RN


Это код для изм. записи.

procedure TPribor_Form.Button1Click(Sender: TObject);
var
  i, nNomerPP, oldRN : integer;
  nNaimen : String;
begin
 oldRN:=DM.PriborSQL.FieldByName("RN").Value;
//Изменяю запись с пом UpdateSQL
 DM.PriborSQL.Edit;
//Присваиваю полям (параметрам) в запросе значения
 DM.PriborSQL.FieldByName("RN").Value:=oldRN;
   if Edit1.Text = "" then
      DM.PriborSQL.FieldByName("NomerPP").Clear
   else
   DM.PriborSQL.FieldByName("NomerPP").Value:=StrToInt(Edit1.text);
   DM.PriborSQL.FieldByName("Naimen").Value:=ComboBox1.Text;
   DM.PriborSQL.FieldByName("Tip").Value:=Edit2.text;
   DM.PriborSQL.FieldByName("Predel").Value:=Edit3.text;
   DM.PriborSQL.FieldByName("NomerZ").Value:=Edit4.text;
     if MaskEdit1.Text = "1.  .  " then
        DM.PriborSQL.FieldByName("DataPov").Clear
   else
   DM.PriborSQL.FieldByName("DataPov").Value:=StrToDate(MaskEdit1.text);
     if MaskEdit2.Text = "1.  .  " then
     DM.PriborSQL.FieldByName("DataNext").Clear
   else
   DM.PriborSQL.FieldByName("DataNext").Value:=StrToDate(MaskEdit2.text);
   DM.PriborSQL.FieldByName("Inventar").Value:=Edit5.text;
   DM.PriborSQL.FieldByName("Ceh").Value:=ComboBox2.text;
   DM.PriborSQL.FieldByName("Mesto").Value:=Edit6.text;
   DM.PriborSQL.FieldByName("Prim").Value:=Edit7.text;
//Завершение редактирование записи
   DM.PriborSQL.Post;
//Делаю из кэша запись в таблицу
   if DM.PriborSQL.UpdatesPending
     then DM.PriborSQL.ApplyUpdates;
   nNomerPP:=DM.PriborSQLNomerPP.Value;
   nNaimen:=DM.PriborSQLNaimen.Value;
//Переоткрываю базу, чтобы была нормальная выборка с сортировкой
   DM.PriborSQL.Active:=false;
   DM.PriborSQL.Active:=true;
   SaveButton.Enabled:=false;
   Pribor_Form.ActiveControl:=GroupBox1;
//Очищаю все поля ввода от старых значений.
   for i:=0 to ComponentCount-1 do
   if Components[i] is TEdit then
  (Components[i] as TEdit).Text:="";
   for i:=0 to ComponentCount-1 do
   if Components[i] is TMaskEdit then
  (Components[i] as TMaskEdit).Text:="";
   for i:=0 to ComponentCount-1 do
   if Components[i] is TCombobox then
  (Components[i] as TCombobox).Text:="";
   DM.PriborSQL.Locate("NomerPP", nNomerPP, [loPartialKey]);
   DM.PriborSQL.Locate("Naimen", nNaimen, [loPartialKey]);
   Pribor_Status.Panels[0].Text:= "Всего записей " + IntToStr(DM.PriborSQL.RecordCount);
   Pribor_Status.Panels[1].Text:="Была изменена запись";
end;

Поле RN - автоинкриментное и ключевое.
Не пойму, что здесь не так.


 
Sergey13 ©   (2005-06-02 13:20) [1]

oldRN:=DM.PriborSQL.FieldByName("RN").Value;
//Присваиваю полям (параметрам) в запросе значения
DM.PriborSQL.FieldByName("RN").Value:=oldRN;

Вот это зачем?
Если
>Поле RN - автоинкриментное и ключевое.
то и не трогай его никогда.

И
RN = :RN,
из запроса выкинь, чтоб не мешалось.


 
Леонид   (2005-06-02 13:26) [2]

Спасибо. Все работает.



Страницы: 1 вся ветка

Текущий архив: 2005.07.11;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.038 c
14-1118098112
KilkennyCat
2005-06-07 02:48
2005.07.11
Забавно, как можно посеять базу данных. Банковскую.


14-1118861856
yaJohn
2005-06-15 22:57
2005.07.11
хостинг с условиями


8-1110298635
Vladimirs
2005-03-08 19:17
2005.07.11
Как преобразовать пиксель 16бит в 24 бит RGB BMP


1-1118508323
Galiaf
2005-06-11 20:45
2005.07.11
Хотел сделать защиту.


3-1117059185
grol
2005-05-26 02:13
2005.07.11
Поставить границы ячейки Excel через Delphi!!!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский