AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi sql-update ... komisch komisch ...
Thema durchsuchen
Ansicht
Themen-Optionen

sql-update ... komisch komisch ...

Ein Thema von markon · begonnen am 2. Dez 2003 · letzter Beitrag vom 3. Dez 2003
 
markon

Registriert seit: 12. Sep 2003
229 Beiträge
 
#4

Re: sql-update ... komisch komisch ...

  Alt 3. Dez 2003, 10:19
danke für eure hilfe.
@ blechwolf
du hast recht mit deiner theorie. das stimmt so.
das mit den letzten index erhöhen hab ich nun ausprobiert und funzt. gab aber zwischendurch kleine ungereimtheiten.
hier ist mal der code:
Delphi-Quellcode:
if rb_fp_anfang.Checked=true
   then begin
        {----- Datensatz an erster Stelle einfügen -----}
         {der kampf mit dem index dauert fast einen geschlagenen tag, doch dann war ich
        doch siegreich..
        - kein index darf doppelt vorkommen -> sonst crash mit datenbank-regeln..
        - erst wird der neue index mit 0 gefüllt, die anderen sind ja von 1 aufwärts..
        - jetzt ganz normal den neuen datensatz erzeugen
        - nach erzeugen, alle indexe um 1 erhöhen (aus 1 wird 2, und aus der 0 wird 1)
           (wobei jeder erhöhte index gleich abgespeichert werden muss "nbpost"}


          {erst index auf 0, später dann +1}
           dbe_FP_ID.Text:='0';

          DBNavigator.BtnClick(nbpost);

         {tabelle neu sortieren damit die indexreihenfolge passt}
          DM_SIML.ADOQuery_FP.SQL.Clear;
          DM_SIML.ADOQuery_FP.SQL.Add('select * from FP order by fp_id desc');
          DM_SIML.ADOQuery_FP.Active:=true;
          DM_SIML.ADOTable_FP.Active:=True;

         {werte in db ändern, um 1 addieren}
          for i:=1 to DM_SIML.ADOQuery_FP.RecordCount do
           begin
            DM_SIML.ADOQuery_FP.RecNo:=i;
           //memo1.Lines.add('recno: '+inttostr(DM_SIML.ADOQuery_FP.RecNo));
            DBNavigator.BtnClick(nbedit); //editmodus
            DM_SIML.adoquery_FP.FieldByName('FP_ID').AsInteger :=
                                   DM_SIML.adoquery_FP.FieldByName('FP_ID').AsInteger + 1;

           {jeder einzelne datensatz muss gleich abgespeichert werden um crash zu vermeiden}
            DBNavigator.BtnClick(nbpost);

           end;
        end{end-if-anfang}
was sagt ihr zu der lösung ist sie zu umständlich aber für mein problem die lösug
(bei vielen datensätzen dauert das ganze ein bischen, da jeder satz gespeichert werden muss)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:29 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz