AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Exception beim DB-Update (mySql)
Thema durchsuchen
Ansicht
Themen-Optionen

Exception beim DB-Update (mySql)

Ein Thema von kico · begonnen am 15. Jun 2004 · letzter Beitrag vom 25. Jun 2004
Antwort Antwort
kico

Registriert seit: 2. Jun 2004
13 Beiträge
 
#1

Exception beim DB-Update (mySql)

  Alt 15. Jun 2004, 13:25
Habe folgendes Problem:

Eine lokale MySql DB und eine im Netz online. Jetzt habe ich mir ein kleines Programm geschrieben, welches die DB updaten soll.
Dabei 2 Routinen, eine wenn der Datensatz online nicht vorhanden ist und eine wenn er online vorhanden und editiert werden muss.
Die Routine einen Datensatz hinzuzufügen (.append) funktioniert einwandfrei jedoch einen Datensatz editieren bringt folgendes Problem:

Normale VarChar, bzw. Integer Felder sind kein Problem. Ich benutze aber in der DB ein Feld vom Typ text.
Folgende Programmzeile verursacht eine Exception (EDatabase Error Update failed, found 0 records) beim .post:

MyOnlineTable.FieldbyName('DetailText').asstring := MyQuery2.FieldbyName('DetailText').AsString;

Das Ding funktioniert aber einwandfrei, wenn ich den Datensatz mit .append anhänge nur halt beim .edit nicht
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Exception beim DB-Update (mySql)

  Alt 15. Jun 2004, 13:38
Hast Du Primärschlüssel in der Datenbank/Tabelle?
Vermutlich kann das intern erzeugte SQL-Update-Commando nicht vernünftig erzeugt werden.

Auch solltest Du angeben, wie Du auf die DB zugreifst (BDE, ADO, dbExpress, native-Komponente).
  Mit Zitat antworten Zitat
kico

Registriert seit: 2. Jun 2004
13 Beiträge
 
#3

Re: Exception beim DB-Update (mySql)

  Alt 15. Jun 2004, 19:52
Primärschlüssel sollten nicht das Problem sein. (Hatte das ganze schon mit/ohne PS probiert). Zudem funktioniert das Ganze wenn ich einen neuen Datensatz anhänge, nur beim edit nicht.

Die Datenbanken werden nativ über die "Tools" von CoreLab (MyDAC) angesprochen.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Exception beim DB-Update (mySql)

  Alt 16. Jun 2004, 08:01
Könntest Du mal etwas Code + Tabellenstruktur posten (Minimales Beispiel, wo dieses Problem auftritt).
  Mit Zitat antworten Zitat
kico

Registriert seit: 2. Jun 2004
13 Beiträge
 
#5

Re: Exception beim DB-Update (mySql)

  Alt 25. Jun 2004, 10:09
Also hab das Problem weiter eingekreist...

Wie schon geschrieben benutze ich in meiner MySQL Datenbank ein Feld vom Typ Text. So lange ich eine neue Zeile in der DB anlege (append) ist das kein Problem. Es wird automatisch die Größe meines gesamten Textes erkannt und soviel Platz in der DB dafür freigeschaufelt.

Editiere ich jetzt aber etwas an einem bestehenden Feld, so kommt mein Textfeld der MySQL Tabelle durcheinander...ich glaube es liegt daran das das Feld nicht mehr die gleiche Größe hat wie vorher.

Irgendwelche Anregungen für mich?
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#6

Re: Exception beim DB-Update (mySql)

  Alt 25. Jun 2004, 10:25
Anstatt den Wert zu editieren, könntest du ihn komplett auslesen, speichern, aus der DB löschen und mit Append wieder einfügen. Ist zwar nicht die allerschönste und -schnellste Lösung, aber sie müsste funktionieren. Ein Problem kriegst du evtl. wenn der Primärschlüssel Auto_Increment ist.

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Antwort Antwort


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 17:59 Uhr.
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