Text Datei in Access Feld einlesen
Text Datei in Access Feld einlesen
Hallo,
ich habe folgende Frage an Euch:
Ich habe eine Access-Datenbank, in welcher ein Feld vorkommt, daß den gesamten Inhalt einer Text-Datei beinhalten soll.
Beispiel:
Es wird ein Serienbrief in Word erstellt, und jeder Brief wird einzeln abgespeichert. (Hintergrund: Die Daten werden in einen HTML-Text eingebettet.)
Die Datei wird als TXT - Datei abespeichert.
Nun soll der gesamte Inhalt der Datei in ein Feld eingelesen werden, was dann in Access an eine Tabelle angehängt werden soll. (Die Tabelle soll später als Datengrundlage für div. HTML Seiten dienen.)
Man kann zwar TXT-Dateien in Access importieren, man erhält dabei aber leider pro Zeile einen neuen Datensatz.
z.B.
Datensatz 1: Material PE
Datensatz 2: Gewicht 140
Das ist natürlich Unsinn. Das ganze Zeugs soll in einen Datensatz und vor allem in ein Feld.
Sagt mir jetzt bitte nicht, daß ich nun VBA anstatt PB lernen soll.
Das Einlesen der Textdatei ist weniger das Problem. While EOF ...
Vielmehr interessiert es micht, wie ich diesen Inhalt in ein einziges Feld reinkriege, so daß ich es z.B. mit Excel oder Access wieder einlesen kann.
-> Jedes Feld ist einen neue Zeile in der Zieltabelle
-> Da der Text des Textdokumentes sehr viel HTML enthält, ist es schwierig, ein geeignetes Trennzeichen zu finden.
-> Wie würdet Ihr das anstellen?
Vielen Dank.
ich habe folgende Frage an Euch:
Ich habe eine Access-Datenbank, in welcher ein Feld vorkommt, daß den gesamten Inhalt einer Text-Datei beinhalten soll.
Beispiel:
Es wird ein Serienbrief in Word erstellt, und jeder Brief wird einzeln abgespeichert. (Hintergrund: Die Daten werden in einen HTML-Text eingebettet.)
Die Datei wird als TXT - Datei abespeichert.
Nun soll der gesamte Inhalt der Datei in ein Feld eingelesen werden, was dann in Access an eine Tabelle angehängt werden soll. (Die Tabelle soll später als Datengrundlage für div. HTML Seiten dienen.)
Man kann zwar TXT-Dateien in Access importieren, man erhält dabei aber leider pro Zeile einen neuen Datensatz.
z.B.
Datensatz 1: Material PE
Datensatz 2: Gewicht 140
Das ist natürlich Unsinn. Das ganze Zeugs soll in einen Datensatz und vor allem in ein Feld.
Sagt mir jetzt bitte nicht, daß ich nun VBA anstatt PB lernen soll.
Das Einlesen der Textdatei ist weniger das Problem. While EOF ...
Vielmehr interessiert es micht, wie ich diesen Inhalt in ein einziges Feld reinkriege, so daß ich es z.B. mit Excel oder Access wieder einlesen kann.
-> Jedes Feld ist einen neue Zeile in der Zieltabelle
-> Da der Text des Textdokumentes sehr viel HTML enthält, ist es schwierig, ein geeignetes Trennzeichen zu finden.
-> Wie würdet Ihr das anstellen?
Vielen Dank.
PB v4.02 XP
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Ich kenne mich mit Access garnicht aus, aber wenn es kein entsprechendes
mehrzeiliges Textfeld zur Verfügung stellt, sollteste einen Blob nehmen. Darin
kannste jede Textgröße in jedem Format speichern.
mehrzeiliges Textfeld zur Verfügung stellt, sollteste einen Blob nehmen. Darin
kannste jede Textgröße in jedem Format speichern.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Hallo,
freut mich, wieder von Dir zu hören.
Nun kennst Du Dich nicht in Access aus und ich weiß nicht, was ein "Blob" ist. Das hab ich noch nie gehört.
Es muß ja keine Access Datei sein. Es kann eine CSV, RTF oder sonstiges sein. Das kann ich alles in Access importieren.
Es geht lediglich darum:
Wie kriege ich den kompletten Inhalt einer TXT-Datei (mit Zeilenumbrüchen) in ein einziges Datenfeld.
In etwa so:
Dateiinhalt der Datei 1 komplett in String einlesen
String in Zieldatei Datensatz 1 Feld1 schreiben.
dann
Dateiinhalt der Datei 2 (also die nächste Datei) komplett in String einlesen
String in Zieldatei (also gleiche Datei) Datensatz 2 (!jetzt 2. Datensatz) Feld1 schreiben.
etc.
Das kann doch nicht so schwer sein. Theoretisch müßte es so gehen, nur habe ich keinen passenden Read - Befehl gefunden, der mir nicht nur die Zeile, sondern die ganze Datei (also mit Zeilenumbrüchen) einliest.
Noch eine persönliche Frage, mußt Du aber nicht beantworten: Wieso bist Du eigentlich immer um die Uhrzeit noch wach? Hast Du auch das Byte-Syndrom wie ich?
freut mich, wieder von Dir zu hören.
Nun kennst Du Dich nicht in Access aus und ich weiß nicht, was ein "Blob" ist. Das hab ich noch nie gehört.
Es muß ja keine Access Datei sein. Es kann eine CSV, RTF oder sonstiges sein. Das kann ich alles in Access importieren.
Es geht lediglich darum:
Wie kriege ich den kompletten Inhalt einer TXT-Datei (mit Zeilenumbrüchen) in ein einziges Datenfeld.
In etwa so:
Dateiinhalt der Datei 1 komplett in String einlesen
String in Zieldatei Datensatz 1 Feld1 schreiben.
dann
Dateiinhalt der Datei 2 (also die nächste Datei) komplett in String einlesen
String in Zieldatei (also gleiche Datei) Datensatz 2 (!jetzt 2. Datensatz) Feld1 schreiben.
etc.
Das kann doch nicht so schwer sein. Theoretisch müßte es so gehen, nur habe ich keinen passenden Read - Befehl gefunden, der mir nicht nur die Zeile, sondern die ganze Datei (also mit Zeilenumbrüchen) einliest.
Noch eine persönliche Frage, mußt Du aber nicht beantworten: Wieso bist Du eigentlich immer um die Uhrzeit noch wach? Hast Du auch das Byte-Syndrom wie ich?

PB v4.02 XP
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
In Blobs werden binäre Dateien gespeichert, egal ob Video, Text, Exe oder
sonstwas. Siehe: http://de.wikipedia.org/wiki/Binary_Large_Object
Bei den PBOSL_Examples ist ein SQLite3 Beispiel mit Blob, wobei hierbei
Bilder eingelesen werden. Access sollte eigentlich auch Blob kennen, bin mir
da aber nicht sicher.
Gruß
Thomas
sonstwas. Siehe: http://de.wikipedia.org/wiki/Binary_Large_Object
Bei den PBOSL_Examples ist ein SQLite3 Beispiel mit Blob, wobei hierbei
Bilder eingelesen werden. Access sollte eigentlich auch Blob kennen, bin mir
da aber nicht sicher.
Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

BLOB geht auch in Access (OLE-Object)
.
Texte in VARCHAR-Feldern wie immer mit UPDATE SET bzw. INSERT INTO.
Dabei die Textdatei vorher komplett in eine Stringvariable einlesen.
Speicher allozieren Größe = Dateigröße (LoF)
ReadFile
ReadData mit Speicherpuffer und Dateigröße
CloseFile
TextString = PeekS(..)
Gruß Karl

Texte in VARCHAR-Feldern wie immer mit UPDATE SET bzw. INSERT INTO.
Dabei die Textdatei vorher komplett in eine Stringvariable einlesen.
Speicher allozieren Größe = Dateigröße (LoF)
ReadFile
ReadData mit Speicherpuffer und Dateigröße
CloseFile
TextString = PeekS(..)
Gruß Karl
The Kopyright Liberation Front also known as the justified ancients of Mumu!
PB 5.X
PB 5.X
Hallo zusammen,
vielen Dank für die vielen Infos.
Ich findes es wirklich klasse, daß Ihr immer so schnell und umfangreich antwortet.
Nur ist es so, daß wir hier im Anfänger-Forum sind. Daher verstehe ich nur Bahnhof. (sorry, bin kein sql'er)
Ich hatte gestern oder besser gesagt heute Nacht an anderer Stelle danach gefragt, ob es zumindest im Anfänger Forum möglich wäre, die Sachen etwas zu kommentieren oder ausführlicher zu beschreiben.
Letztendlich können die anderen Newbies und ich mit solch spezieller Syntax wenig anfangen. Ich hoffe, daß das jetzt nicht unverschämt war.
Wäre wirklich super nett von Euch, wenn das ginge. Dann bräuchten wir nicht so oft nachhaken und Euch immer nerven. Vielen Dank.
vielen Dank für die vielen Infos.
Ich findes es wirklich klasse, daß Ihr immer so schnell und umfangreich antwortet.
Nur ist es so, daß wir hier im Anfänger-Forum sind. Daher verstehe ich nur Bahnhof. (sorry, bin kein sql'er)
Ich hatte gestern oder besser gesagt heute Nacht an anderer Stelle danach gefragt, ob es zumindest im Anfänger Forum möglich wäre, die Sachen etwas zu kommentieren oder ausführlicher zu beschreiben.

Letztendlich können die anderen Newbies und ich mit solch spezieller Syntax wenig anfangen. Ich hoffe, daß das jetzt nicht unverschämt war.
Wäre wirklich super nett von Euch, wenn das ginge. Dann bräuchten wir nicht so oft nachhaken und Euch immer nerven. Vielen Dank.

PB v4.02 XP
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
SQL hat auch nicht unbedingt was mit PureBasic zu tun, dafür findest z.B. hier
http://sql.1keydata.com/de/ ein Tutorial
sowie hier: http://www.purebasic.fr/german/viewtopic.php?t=6323
was für PB
Aber ob man als Einsteiger gleich mit Datenbanken anfangen sollte
Gruß
Thomas
http://sql.1keydata.com/de/ ein Tutorial
sowie hier: http://www.purebasic.fr/german/viewtopic.php?t=6323
was für PB
Aber ob man als Einsteiger gleich mit Datenbanken anfangen sollte

Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Hallo und Danke für die Links.
Ich arbeite schon seit über 10 Jahren mit Access Datenbanken. Das schöne daran ist, daß man die Selektionen nicht unbedingt über SQL eingeben muß. Natürlich läuft dies im Hintergrund über SQL ab. Man kann aber bequem über das GUI arbeiten.
Daher ist es kein Widerspruch, als PB Anfänger Daten in Access einzulesen. Es geht ja nur um ein für Profis recht simples Problem.
Nun denn, ich werde mir das Tutorial mal anschauen. Vielleicht bin ich dann schlauer.
Dankeschön.
Ich arbeite schon seit über 10 Jahren mit Access Datenbanken. Das schöne daran ist, daß man die Selektionen nicht unbedingt über SQL eingeben muß. Natürlich läuft dies im Hintergrund über SQL ab. Man kann aber bequem über das GUI arbeiten.
Daher ist es kein Widerspruch, als PB Anfänger Daten in Access einzulesen. Es geht ja nur um ein für Profis recht simples Problem.
Nun denn, ich werde mir das Tutorial mal anschauen. Vielleicht bin ich dann schlauer.
Dankeschön.

PB v4.02 XP
Handling mit Accessdatei:
http://www.purebasic.fr/german/viewtopic.php?t=8944
und Textdatei komplett in Variable einlesen:
http://www.purebasic.fr/german/viewtopi ... t=readdata
http://www.purebasic.fr/german/viewtopic.php?t=8944
und Textdatei komplett in Variable einlesen:
http://www.purebasic.fr/german/viewtopi ... t=readdata
PB5 / Spiderbasic / WB14 / Win7 / Win8.1 / Win10 / Debian 9