Delphi-PRAXiS
Seite 7 von 7   « Erste     567   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Probleme beim Speichern in eine Tabelle (https://www.delphipraxis.net/197470-probleme-beim-speichern-eine-tabelle.html)

Luckner 9. Aug 2018 16:05

AW: Probleme beim Speichern in eine Tabelle
 
Keine Ahnung Was nicht funktioniert. Select-String ist richtig. Kurz bevor ich poste gebe ich mir einen Wert aus dem Datensatz aus und der ist auch korrekt. Post macht er und hinterher bekomme ich RowsAffected = 0. Diese RowsAffected ist schon ein tolles Teil. Kannte ich nicht.

Uwe Raabe 9. Aug 2018 16:31

AW: Probleme beim Speichern in eine Tabelle
 
Wenn RoswAffected 0 liefert, dann wurde zu der WHERE Bedingung im ModifySQL kein Eintrag gefunden. Lass dir doch vor dem Post das Feld ID des Datensatzes anzeigen, denn die ist für das UPDATE relevant.

himitsu 9. Aug 2018 16:32

AW: Probleme beim Speichern in eine Tabelle
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1410138)
Zitat:

Zitat von Luckner (Beitrag 1410137)
Es gibt auch keinen Datensatz in der Tabelle "Planung", der diesen Eintrag trägt.

Sollte es in dem Fall dann nicht
Delphi-Quellcode:
DatamodulePlanung.IBDataSetPlanung.Append;
anstatt
Delphi-Quellcode:
DatamodulePlanung.IBDataSetPlanung.Edit;
heißen?

Edit macht ein Insert (oder Append, aber egal, da hier das Gleiche) wenn noch "garkein" Datensatz vorhanden ist,

aber ja ...

Luckner 9. Aug 2018 16:47

AW: Probleme beim Speichern in eine Tabelle
 
Danke erstmal für die Hilfe. Mache jetzt Feierabend und werde mich morgen wieder damit befassen. Muss unbedingt duschen.

Gruß, Luckner

Frickler 10. Aug 2018 16:38

AW: Probleme beim Speichern in eine Tabelle
 
Zitat:

Zitat von himitsu (Beitrag 1410251)
Edit macht ein Insert (oder Append, aber egal, da hier das Gleiche) wenn noch "garkein" Datensatz vorhanden ist,

Andererseits schrieb der TE, dass nach dem Select "RecordCount" 1 ergibt. Wobei ich nicht weiß, ob das auch 1 ergibt, wenn die Selektion nichts ergibt und Edit einen Datensatz anhängt.

Die ganze Geschichte ist eh total fehlerträchtig. Warum nicht direkt (für Dialect 1) ein
Code:
UPDATE AUFTRAG
SET STATUS = :ST, STATUSDATUM = CURRENT_TIMESTAMP, STATUS_ANWENDER = :ANW
WHERE ID = :ID
und
Code:
UPDATE PLANNUNG
SET STATUS = :ST, STATUSDATUM = CURRENT_TIMESTAMP, STATUS_ANWENDER = :ANW
WHERE ID_AUFTRAG = :IA
Das ganze in eine Procedure wrappen mit den zu updatenden Werten als Parameter und gut ist. Wenn beide Wertänderungen zusammengehören kann man die gleich in einer gemeinsamen Transaktion abfrühstücken.

Oder geht das nicht mit den verwendeten Komponenten?

p80286 10. Aug 2018 21:46

AW: Probleme beim Speichern in eine Tabelle
 
Du bist doch nicht mehr...........
Über eine Query zwei Statements absetzen und wissen was passiert(ren sollte) und sich damit 63 Threadeinträge sparen. Unverantwortlich!


Gruß
K-H

Luckner 13. Aug 2018 12:03

AW: Probleme beim Speichern in eine Tabelle
 
Hallo,
gerade eben habe ich das Problem gelöst und es funktioniert. In der Tabelle Plannung:oops: existierte zwar das Feld "ID", aber alle Datensätze in diesem Feld war auf "nil". Diese Tabelle wird mehrmals am Tag aus mehreren anderen Tabellen erstellt und das Feld "ID" wird nicht gebraucht. Mit dem RoswAffected und dem Hinweis auf ModifySQL (danke Uwe Raabe) habe ich das Schlüsselfeld ID =: OLD_ID gegen ID-AUFTRAG =: OLD_ID_AUFTRAG geändert. und es funktioniert. Habe jetzt vorsorglich "ID" aus dieser Tabelle gelöscht.
Vielen Dank, Luckner

p80286 13. Aug 2018 13:01

AW: Probleme beim Speichern in eine Tabelle
 
Zitat:

Zitat von Luckner (Beitrag 1410495)
und das Feld "ID" wird nicht gebraucht.

Also ist es unmöglich (nicht unwahrscheinlich!) das es Datensätze mit unterschiedlichen Inhalten gibt!?

(übrigens gibt es für viele Datenbanken die Möglichkeit die ID (Schlüssel) automatisch erzeugen zu lassen. Und mit ID ist jeder Datensatz individuell definiert und Zugriffe sind u.U schneller (Index))

Gruß
K-H

hoika 13. Aug 2018 18:48

AW: Probleme beim Speichern in eine Tabelle
 
Puh,
Thread ist erledigt...


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:44 Uhr.
Seite 7 von 7   « Erste     567   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz