Бывалый

Профиль
Группа: Участник
Сообщений: 187
Регистрация: 26.1.2004
Репутация: нет Всего: нет
|
Здравствуйте. По таблице в БД произошел update без условия(т.е. все данные стали одинаковые). Код | procedure TForm1.AllAddBase(NM:string); var i,numId:integer; begin case tag of 1: begin IdAll:=GetDataI('SELECT MAX(id) FROM zakaz')+1; ibquery2.Close; ibquery2.SQL.Clear; ibquery2.SQL.Add('INSERT INTO ZAKAZ (ID, NOMER, IDON, IDONA, Vremy, OTONFAM,'); ibquery2.SQL.Add('OTONNAME, OTONOTCH, OTONAFAM, OTONANAME, OTONAOTCH,'); ibquery2.SQL.Add('ONFAPPOSLE, ONAFAMPOSLE, SAGS, SDATE, STIME, STATUS'); if Telefon.Text<>'' then ibquery2.SQL.Add(',TELEFON'); if OnaTelefon.Text<>'' then ibquery2.SQL.Add(',ONATELEFON'); if EMAIL.Text<>'' then ibquery2.SQL.Add(',EMAIL'); ibquery2.SQL.Add(',RASCHET, Ceremon, SUMMA'); if RzRadioButton2.Checked then ibquery2.SQL.Add(',DATAPOKV, FAMILPOKV') else ibquery2.SQL.Add(',NOMERKV'); ibquery2.SQL.Add(')'); ibquery2.SQL.Add('VALUES ('+#39+IntTOStr(IDALL)+#39+', '+#39+NM+#39+', '); ibquery2.SQL.Add(#39+IntToStr(Idon)+#39+', '+#39+IntToStr(IdONA)+#39+', '); ibquery2.SQL.Add(#39+FormatDateTime('dd.mm.yyyy',Now)+#39+', '); ibquery2.SQL.Add(#39+OnFamSags.Text+#39+', '+#39+OnNamSags.Text+#39+', '); ibquery2.SQL.Add(#39+OnOtchSags.Text+#39+', '+#39+OnaFamSags.Text+#39+', '); ibquery2.SQL.Add(#39+OnaNameSags.Text+#39+', '+#39+OnaOtchSags.Text+#39+', '); ibquery2.SQL.Add(#39+OnNewFam.Text+#39+', '+#39+OnaNewFam.Text+#39+', '); ibquery2.SQL.Add(#39+IntToStr(Sags.ItemIndex+1)+#39+', '+#39+FormatDateTime('dd.mm.yyyy',RegistrDate.date)+#39+', '); ibquery2.SQL.Add(#39+FormatDateTime('hh:nn',RegistrTime.Time)+#39+', '+#39+'0'+#39); if Telefon.Text<>'' then ibquery2.SQL.Add(', '+#39+Telefon.text+#39); if OnaTelefon.Text<>'' then ibquery2.SQL.Add(', '+#39+OnaTelefon.text+#39); if EMAIL.Text<>'' then ibquery2.SQL.Add(', '+#39+EMAIL.text+#39); if RzRadioButton1.Checked then ibquery2.SQL.Add(','+#39+'0'+#39) else ibquery2.SQL.Add(','+#39+'1'+#39); NumId:=Integer(ceremoniy.Items.Objects[ceremoniy.ItemIndex]); ibquery2.SQL.Add(', '+#39+IntToStr(NumID)+#39); ibquery2.SQL.Add(', '+#39+Summa.Text+#39); if RzRadioButton2.Checked then ibquery2.SQL.Add(','+#39+FormatDateTime('dd.mm.yyyy',besnalDate.date)+#39+', '+#39+FamilPoKv.Text+#39) else ibquery2.SQL.Add(','+#39+NOMERKv.Text+#39); ibquery2.SQL.Add(')'); end; 0:begin ibquery2.Close; ibquery2.SQL.Clear; ibquery2.SQL.Add('update zakaz set '); ibquery2.SQL.Add('OTONFAM='+#39+OnFamSags.Text+#39); ibquery2.SQL.Add(',OTONNAME='+#39+OnNamSags.Text+#39); ibquery2.SQL.Add(',OTONOTCH='+#39+OnOtchSags.Text+#39); ibquery2.SQL.Add(',OTONAFAM='+#39+OnaFamSags.Text+#39); ibquery2.SQL.Add(',OTONANAME='+#39+OnaNameSags.Text+#39); ibquery2.SQL.Add(',OTONAOTCH='+#39+OnaOtchSags.Text+#39); ibquery2.SQL.Add(',ONFAPPOSLE='+#39+OnNewFam.Text+#39); ibquery2.SQL.Add(',ONAFAMPOSLE='+#39+OnaNewFam.Text+#39); ibquery2.SQL.Add(',SAGS='+#39+IntToStr(Sags.ItemIndex+1)+#39); ibquery2.SQL.Add(',SDATE='+#39+FormatDateTime('dd.mm.yyyy',RegistrDate.date)+#39); ibquery2.SQL.Add(',STIME='+#39+FormatDateTime('hh:nn',RegistrTime.Time)+#39);
if Telefon.Text<>'' then ibquery2.SQL.Add(', TELEFON='+#39+Telefon.text+#39); if OnaTelefon.Text<>'' then ibquery2.SQL.Add(', ONATELEFON='+#39+OnaTelefon.text+#39); if EMAIL.Text<>'' then ibquery2.SQL.Add(', EMAIL='+#39+EMAIL.text+#39); if RzRadioButton1.Checked then ibquery2.SQL.Add(',RASCHET='+#39+'0'+#39) else ibquery2.SQL.Add(',RASCHET='+#39+'1'+#39); NumId:=Integer(ceremoniy.Items.Objects[ceremoniy.ItemIndex]); ibquery2.SQL.Add(', CEREMON='+#39+IntToStr(NumID)+#39); ibquery2.SQL.Add(', SUMMA='+#39+Summa.Text+#39); if RzRadioButton2.Checked then begin ibquery2.SQL.Add(',DATAPOKV='+#39+FormatDateTime('dd.mm.yyyy',besnalDate.date)+#39); ibquery2.SQL.Add(', FAMILPOKV='+#39+FamilPoKv.Text+#39); end else ibquery2.SQL.Add(',NOMERKV='+#39+NOMERKv.Text+#39); ibquery2.SQL.Add(' where id='+#39+IntToStr(Form2.GlobalID)+#39); end; 2: begin ibquery2.Close; ibquery2.SQL.Clear; ibquery2.SQL.Add('update zakaz set '); ibquery2.SQL.Add('OTONFAM='+#39+OnFamSags.Text+#39); ibquery2.SQL.Add(',OTONNAME='+#39+OnNamSags.Text+#39); ibquery2.SQL.Add(',OTONOTCH='+#39+OnOtchSags.Text+#39); ibquery2.SQL.Add(',OTONAFAM='+#39+OnaFamSags.Text+#39); ibquery2.SQL.Add(',OTONANAME='+#39+OnaNameSags.Text+#39); ibquery2.SQL.Add(',OTONAOTCH='+#39+OnaOtchSags.Text+#39); ibquery2.SQL.Add(',ONFAPPOSLE='+#39+OnNewFam.Text+#39); ibquery2.SQL.Add(',ONAFAMPOSLE='+#39+OnaNewFam.Text+#39); ibquery2.SQL.Add(',SAGS='+#39+IntToStr(Sags.ItemIndex+1)+#39); ibquery2.SQL.Add(',SDATE='+#39+FormatDateTime('dd.mm.yyyy',RegistrDate.date)+#39); ibquery2.SQL.Add(',STIME='+#39+FormatDateTime('hh:nn',RegistrTime.Time)+#39); if Telefon.Text<>'' then ibquery2.SQL.Add(', TELEFON='+#39+Telefon.text+#39); if OnaTelefon.Text<>'' then ibquery2.SQL.Add(', ONATELEFON='+#39+OnaTelefon.text+#39); if EMAIL.Text<>'' then ibquery2.SQL.Add(', EMAIL='+#39+EMAIL.text+#39); if RzRadioButton1.Checked then ibquery2.SQL.Add(',RASCHET='+#39+'0'+#39) else ibquery2.SQL.Add(',RASCHET='+#39+'1'+#39); NumId:=Integer(ceremoniy.Items.Objects[ceremoniy.ItemIndex]); ibquery2.SQL.Add(', CEREMON='+#39+IntToStr(NumID)+#39); ibquery2.SQL.Add(', SUMMA='+#39+Summa.Text+#39); if RzRadioButton2.Checked then begin ibquery2.SQL.Add(',DATAPOKV='+#39+FormatDateTime('dd.mm.yyyy',besnalDate.date)+#39); ibquery2.SQL.Add(', FAMILPOKV='+#39+FamilPoKv.Text+#39); end else ibquery2.SQL.Add(',NOMERKV='+#39+NOMERKv.Text+#39); NumId:=Integer(CbComment.Items.Objects[CbComment.ItemIndex]); ibquery2.SQL.Add(', DPSUMMA='+#39+DPSumma.Text+#39); ibquery2.SQL.Add(', DPNOMER='+#39+DPNumKvit.Text+#39); ibquery2.SQL.Add(', DPKOMMENT='+#39+IntToStr(NumID)+#39); ibquery2.SQL.Add(', DPDATE='+#39+FormatDateTime('dd.mm.yyyy',Now)+#39); ibquery2.SQL.Add(' where id='+#39+IntToStr(Form2.GlobalID)+#39); end; end; try ibquery2.ExecSQL; ibquery2.Transaction.Commit; except Application. MessageBox('Произошла ошибка при записи данных в БД!','Предупреждение',MB_OK); end; end;
|
Произойти это могло только здесь, больше update к этой таблице нет. Не могу понять почему и как такое могло случится... База на firebird. Помогите разобраться.
|