Autor Beitrag
DaSurv
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Do 11.07.02 13:13 
Ich habe eine Access Datenbank erstellt und mit einem ADOTable verbunden. Funktioniert eigentlich einwandfrei.

Ich kann Felder leer lassen - kein Problem.

Nur wenn ich MAL einen Wert in der DB gespeichert habe und diesen wieder lösche - bekomme ich eine Exception mit dem Text, darf keine Zeichenfolge der Länge Null sein.

Ich habe diese Felder in Access2000 als TEXTFELDER und mit EINGABE NICHT ERFORDERLICH deklariert; auch habe ich weder irgendwelche Keyfelder noch Indizes gesetzt.

Bin für jede Hilfe dankbar.

DaSurv
Renegade
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 358

Win XP Pro, Win 7 Beta
BDS 2006
BeitragVerfasst: Do 11.07.02 16:35 
Dazu eine Frage bevor ich anfange rumzuraten - auf welche Art und Weise versuchst Du den Eintrag zu löschen? Am Besten poste den Code.
:wink:

Bis denn

_________________
Sokrates (468 v.Chr. - 399 v.Chr.)
"Es ist keine Schande, nichts zu wissen, wohl aber, nichts lernen zu wollen."
DaSurv Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Do 11.07.02 21:45 
Also, ich habe verschiedene dbedit´s über ein datasource mit den entsprechenden Feldern aus der DB verbunden. Anschließend lasse ich mir die einzelnen Datensätze anzeigen und auf Knopfdruck kann ich die dbedits dann editieren. Danach lasse ich über ADOTable1.Edit und ADOTable1.Post die Änderungen in die Datenbank eintragen.

Und genau da ist der Haken - hier kann ich leere Felder posten; aber nur wenn das Feld vor dem posten schon leer war. War ein Wert in dem Feld und ich überschreibe diesen mit einem String der Länge Nulle, dann gibt´s ne exception!!!.

Danke für deine Hilfe.

DaSurv


Zuletzt bearbeitet von DaSurv am Do 18.07.02 02:37, insgesamt 1-mal bearbeitet
Renegade
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 358

Win XP Pro, Win 7 Beta
BDS 2006
BeitragVerfasst: Mi 17.07.02 23:26 
Versuch mal folgendes:

Setze die Eigenschaft AutoEdit deines TDataSource auf True - dann kannst die den spaß mit post etc. sparen und weiterhin sollte die Fehlerbehandlung von der BDE / Delphi übernommen werden

_________________
Sokrates (468 v.Chr. - 399 v.Chr.)
"Es ist keine Schande, nichts zu wissen, wohl aber, nichts lernen zu wollen."
DaSurv Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Do 18.07.02 02:49 
AutoEdit ist schon auf True - das stimmt, da könnte ich mir wirklich das edit sparen.

Gibt aber trotzdem noch die exception bei Strings der Länge Null.

DaSurv
MrSpock
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 262



BeitragVerfasst: Do 18.07.02 08:30 
Hall DaSurv,

neben der Eigenschaft "Eingabe erforderlich" gibt es für die Felddefinition in Access noch die Eigenschaft "Leere Zeichenfolge", die standardmäßig auf "nein" steht. Hier musst du "ja" eintragen, dann funktioniert's.

_________________
Live long and prosper
MrSpock \\//
DaSurv Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Do 18.07.02 15:06 
Ein Dankeschön, an den Bodensee!

Das war der Fehler.

Danke

DaSurv