Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

MS Access: Leerzeichen in Memo-Feldern speichern





Frage

Hallo, ich habe eine Tabelle mit einem Feld vom Typ MEMO, in dem Text gespeichert werden soll. Sobald in dem Feld eine Zeichenkette mit nachfolgenden Leerzeichen eingegeben wird, entfernt Access alle nachfolgenden Leerzeichen. Wie bringe ich Access dazu die eingegebenen Leerzeichen tatsächlich zu speichern. Grüße Iossif

Antwort 1 von Herbert

Hi Iossif ,
garnicht, würde wohl auch keinen Sinn machen.
Wenn Du zum zweitenmal was in das Memo speicherst und einen Abstand brauchst, setze vor Deinen Text : Memo = Memo & " " & MeinText..
Wenn Du einen Zeilenwechsel willst setze vor Deinen Text:
Memo = Memo & vbnewline & MeinTest.
Gruß Herbert

Antwort 2 von iossif

Hallo Herbert,

in meinem Fall ist es jedoch leider zwingend notwendig. Grund ist folgender:
Die in der Datenbank abgespeicherten Daten sind die erwarteten Werte für einen automatisierten Anwendungstest.
Sprich: wenn ein Benutzer als erwarteten Wert den String "Aktenzeichen 4711" in die Datenbank eingibt, dann erwartet er genau diese Zeichenkette während des Test der Anwendung - nicht mehr, nicht weniger.
Genauso verhält es sich mit den Leerzeichen: Wenn er 111 Leerzeichen in die Datenbank eingibt, dann erwartet er genau 111 Leerzeichen beim Test der Anwendung. Wenn er nichts erwartet, dann gibt er nichts in die Datenbank ein. Das funktioniert allerdings nicht, denn Access schneidet ja nachfolgende Leerzeichen ab. Sprich, wenn der Tester beispielsweise 5 Leerzeichen als erwarteten Wert vorgibt, werden tatsächlich 0 Leerzeichen in der Datenbank gespeichert.

Wird der Test nun gestartet und die Anwendung unter Test (AUT) läuft ohne Fehler, dann passiert folgendes:
Die Anwendung gibt korrekt 5 Leerzeichen aus.
In der Datenbank steht aber ein Leerstring als erwarteter Wert.
Folglich schlägt der Vergleich des erwarteten Wertes (in der DB ist ein Leerstring) mit dem tatsächlichen Wert (die AUT gibt 5 Leerzeichen aus) fehl.

Es muss doch irgendwie eine Möglichkeit geben, die Daten so in der Datenbank zu speichern, wie sie auch eingegeben wurden. Es würde ja auch keinen Sinn machen, wenn ich in MS-Word einen Brief schreibe, aber Punkte am Satzende von Word entfernt würden, denn semantisch ist "" etwas ganz anderes als ".". Ähnlich verhält es sich doch auch mit den Leerzeichen.

Danke und Gruß
Iossif

Antwort 3 von Roadrunner90

Hi iossif,

die Lösung hast du in deinem letzten Satz schon selbst gefunden. Der Wert muß in Hochkommas stehen, dann speichert Access im Memofeld den ganzen Inhalt allerdings incl. der Hochkommas. Damit solltest du bei der Auswertung aber keine Probleme haben.

Gruß Rudolf

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: