Frage

Ich verwende eine Access-Datenbank nur als Backend verwendet.
Ich benutze Memo Felder.

Ich habe das Memo Felder sind gelernt unterliegen eine Beschädigung der Datenbank verursachen, weil sie in einer separaten Datenseite gespeichert sind; der Datensatz hält nur einen Zeiger auf die Datenseite, wo die tatsächlichen Daten gespeichert werden.

Die meisten der Zeit, die ich nur von 100 bis 1000 Zeichen müssen oder so, also hatte ich eine Idee ...
Meine „brilliant“ (oder auch nicht) Idee war, das Memo in 4 oder 5 Text Field zu spalten (sie können 255 Zeichen halten jeweils).

Wer das schon mal gemacht hat?
Bekannte Probleme?
Würde dieser Ansatz zu Datenkorruption weniger anfällig?

Danke,
Jag

P. S.
1. Ich habe vor Korruption Probleme hat.
2. Ich weiß, dass das Beste, was zu einem anderen Backend zu migrieren wäre, aber es ist nicht möglich.

War es hilfreich?

Lösung

Die bessere Abhilfe ist, die Memo-Daten Seite von seiner gefügte Aufzeichnung entflechten. Die Art und Weise zu tun, ist das Memo-Feld (n) in einer separaten Tabelle zu setzen. Sie können entweder mit einer 1: 1-Tabelle (mit mehreren Memos in der Seitentabelle), oder, besser, als ein 1: N-Tisch mit einem Memo-Typ-Feld. Letztere Art und Weise ist der einzige Weg, um vollständig das Memo Zeiger Problem zu vermeiden, wenn es, wie in der früheren Lösung, die Korruption eines Notizzeigers in der Memo-Tabelle führt Sie alle von ihnen zu verlieren.

Außerdem sollten Sie prüfen, Warum Ihre Datenbank korrumpiert Memo Zeiger. Abgesehen von dem Vorschlag oben, sollten Sie wahrscheinlich betrachten Sie Ihre Notizen ungebundene Bearbeitung, aber da es Sie nicht scheint, verwenden eine Access-Front zu Ihrem Jet MDB beenden, die wahrscheinlich kein Problem. Ich sehe Memo Korruption hin und wieder, aber nicht sehr oft. Wenn Sie es häufig sehen, schlägt es mir, dass Ihre Anwendung ist schlecht konstruiert oder Ihre Betriebsumgebung deutlich minderwertige.

Andere Tipps

Es klingt wie Sie ein vorhandenes Memo-Feld nehmen wollen und hacken-up, bevor sie in die Datenbank setzen und sie dann wieder zusammen Kleben, wenn Sie es angezeigt werden müssen.

Ich glaube, Sie gehen, um für eine Welt des Schmerzes sein, wenn Sie versuchen, dass. Ich würde härter versuchen, das Backend zu ändern, wenn das die einzige Möglichkeit ist:)

Ich werde auf DWF Antwort aufzubauen, indem darauf hindeutet, etwas zu tun, wie Sie darauf hindeutet wurden. Machen Sie eine 1: n. Tabelle (ich nenne es Usernotes) mit einem Textfeld (vs Memos, die Sie scheinen zu haben Probleme mit)

Erstellen Sie dann ein Unterformular mit Usernotes als seine Datenquelle, und ersetzen Sie das Memo-Feld mit dem Usernotes Formular. Auf diese Weise können die Benutzer entscheiden, wo Linie / Absatzumbrüche im Rahmen des 255-Zeichen-Textfeld sind. (Für die Konvertierung werden Sie noch die Memos bis hacken müssen, aber das ist nur eine einmalige Operation)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top