AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Zugruffsverletzung bei Abfrage von "Text"-Feldern aus MySQL mit BDE
Thema durchsuchen
Ansicht
Themen-Optionen

Zugruffsverletzung bei Abfrage von "Text"-Feldern aus MySQL mit BDE

Ein Thema von Bbommel · begonnen am 25. Feb 2014 · letzter Beitrag vom 25. Feb 2014
 
Bbommel

Registriert seit: 27. Jun 2007
Ort: Köln
669 Beiträge
 
Delphi 12 Athens
 
#1

Zugruffsverletzung bei Abfrage von "Text"-Feldern aus MySQL mit BDE

  Alt 25. Feb 2014, 09:11
Datenbank: MySQL • Version: 5.5.8 • Zugriff über: ODBC/BDE
Hallo zusammen,

ja, es geht um die böse BDE und ja, es geht um das nervige ODBC.

Es geht hier um eines dieser Alt-Projekte. Ich habe das noch zu Zeiten entwickelt, als ich das Ganze noch nicht beruflich gemacht hatte und mir einiges an Erfahrung fehlte, die ich heute habe - daher ist es auch an manchen Stellen nicht so geschickt programmiert, wie ich das (hoffentlich) heute machen würde. Das nur vorweg, warum ich die BDE nicht mal eben so austauchen kann, denn die steckt da an zu vielen Stellen drin.

Es geht um eine Art Mini-ERP-System, das ich vor... ach... 12, 13 Jahren mal für die kleine Firma gebastelt habe. Läuft seitdem eigentlich ganz wunderbar. Jetzt hatten sie aber einen kleinen Änderungswunsch, der eigentlich auch schnell zu realisieren gewesen wäre. Aber: wenn ich das Programm mit meinem aktuellen XE3 kompiliere und dann starte, kommt jedes Mal, wenn das Programm auf ein TEXT-Feld zugreifen will, eine Zugriffsverletzung. Ansonsten funktioniert der Datenbankzugriff problemlos.

Ich habe schon versucht, den MySQL-ODBC-Treiber zu aktualisieren, aber das hat nichts geholfen.

So sieht der Code aus, wobei der ja jetzt nicht so spektakulär ist:

Delphi-Quellcode:
    with AbfrageBestellung.SQL do begin
      Add ('SELECT lieferantID, kundeID, bestellungNr,');
      Add (' YEAR(bestellungDatum) AS bestellungJahr,');
      Add (' MONTH(bestellungDatum) AS bestellungMonat,');
      Add (' DAYOFMONTH(bestellungDatum) AS bestellungTag,');
      Add (' bestellungLiefertermin, mitarbeiterID,');
      Add (' bestellungFax, bestellungKundenschutz,');
      Add (' bestellstatusBez, bestellungLieferschein, bestellungHinweise,');
      Add (' Bestellung.bestellstatusID AS statusID');
      Add ('FROM Bestellung LEFT JOIN BestellStatus USING (bestellstatusID)');
      Add ('WHERE BestellungID='+inttostr(editID));
    end;
    AbfrageBestellung.Open;
    kontaktID:=AbfrageBestellung['lieferantID'];
    kontaktKID:=AbfrageBestellung['kundeID'];
    EditBestellungNr.Text:=AbfrageBestellung['bestellungNr'];
    EditBestellungDatum.Text:=inttostr(AbfrageBestellung['bestellungTag'])+'.'+inttostr(AbfrageBestellung['bestellungMonat'])+'.'+inttostr(AbfrageBestellung['bestellungJahr']);
    ComboLiefertermin.Text:=AbfrageBestellung['bestellungLiefertermin'];
    ComboMitarbeiter.KeyValue:=AbfrageBestellung['mitarbeiterID'];
    LabelBestellungsStatus.Caption:=AbfrageBestellung['bestellstatusBez'];
    if AbfrageBestellung['bestellungFax']=1 then CheckFax.Checked:=true else CheckFax.Checked:=false;
    if AbfrageBestellung['bestellungLieferschein']=1 then CheckLieferschein.Checked:=true else CheckLieferschein.Checked:=false;
    if AbfrageBestellung['bestellungKundenschutz']=1 then CheckKundenschutz.Checked:=true else CheckKundenschutz.Checked:=false;
    MemoHinweise.Text:=AbfrageBestellung['bestellungHinweise']; // ******* Hier die AV ******
    [...]
Das Ganze knallt also in der letzten Zeile. Obwohl es halt seit vielen, vielen Jahren eigentlich funktioniert.

Irgendwelche Ideen? Irgendwelche Parameter im ODBC-Treiber, die helfen könnten?

Bis denn
Bommel
  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 17:18 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