Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Textdaten in Datenbank konvertieren

Empfohlene Antworten

Veröffentlicht

habe folgende Aufgabe erhalten und stehe am Schlauch:

eine .txt ist nach etwas diesem Muster strukturiert:

163000080801 06THOMAS 09MUSTERMANN 00 00 00 00 00 00 00 00 00 00 00 00 0097854 12MUSTERSTRASSE 12 00 20GASTHOF MUSTERMANN 00 00 |163000080803 06TALIA 07TESTERIN 00 00 00 00 00 00 00 00 00 00 00 00 00485210TESTSTRASSE 10TESTDORF 1A 00 18GÄSTEHAUS TESTLAND 00 00

Diese Daten (sind über 100.000) sollen in eine Access-Datenbank mit den Feldern NR., Vorname, Name, Strasse, ORt, etc...eingestellt werden. Der neue Datensatz beginnt immer mit der 163000000... Nummer, die Zahlen vor den Namen stellen nur die Länge des NAmens dar und sollen auch verschwinden, ebenso die "00" ZAhlen

Kann das funktionieren?

hi hiob,

also das kann schon funktionieren - habe ähnliche aufgabe schon realisiert. du brauchst halt eine funktion die die datei öffnet und zeilenweise und dann von links nach rechts abgeht, dann einen recrodset in den du die daten an entsprechende position speicherst (zB. in die spalte vorname). dann must du noch prüfen ob die zeile mit 163000000... beginnt, wenn ja movenext / bzw. update und addnew im recordset. is etwas kompliziert aber man kann sich durchbeißen.

Hi,

also, ich habe sowas mal in VB gemacht. Dort kannst du mit einem TextStream Objekt den Text Zeilenweise einlesen und mit der MID-Funktion auseinanderschneiden. Das setzt natürlich voraus, das alle zu importierenden Dateien gleich aufgebaut sind.

Wenn Du mehr Infos zu dieser Methode brauchst, z.B. Codebeispiele, mail mich an.

Gruß, Tia

genau das hab ich gemeint....

wenn die abschnitte also fürn namen z.B. verschieden lang sind kannst du das mid oder left mit variablen machen , also z.B. "Mid(a,b)" oder so und das a und b in einer schleife hochzählen und das ergebnis (immer ein zeichen der zeile) mit "zeichen = Mid(a,b)" , "if zeichen = " " then" kannstd du dann zaehlen wie lang der einzelne abschnitt ist und das dann mit mid benutzen um den richtigen text zu kopieren....

Danke soweit,

weiteres Problem ist, das die Längenangaben vor den Namen in einigen Fällen nicht korrekt sind...

kann jemand den passenden VB-Code hier reinstellen? :-)

Hmm aber Leerzeichen sind dazwischen, vielleicht könntest du es mit ihnen hinbekommen, indem du immer die Strings von Leerzeichen zu Leerzeichen nimmst, aber wenn du mehrere Wörter in einer Spalte speichern willst hast du ein Problem.

Vielleicht dann noch überprüfen ob die ersten zwei Zeichen eine Nummer ist ... na ja so als Anregung ;)

*grübel*

Servus

Eva

hi,

aber die Länge der Namen (mit Leerzeichen und Nummer) ist doch fest. Also schneide doch einfach den Bereich aus, indem der Name steht, mit Leerzeichen und setzte ein TRIM()!

Gruß,Tia

@Tiana Ry:

Ich würde mir die Beiträge nochmal genau durchlesen und dann nochmal überlegen was du für einen Vorschlag hast. Dazu sage ich nur:

:DWer lesen kann ist klar im Vorteil !!! :D

Ich würde einfach immer bis zum nächsten Lehrzeichen einlesen und dann den ausgelesene string weiterbearbeiten, z. B. wenn der String 00 ist dann schmeis ihn weg. Wenn er was sinnvolles wie Name ist, dann liest du ihn aus. Dafür hab ich eine Idee, weis aber nicht ob das in VB funktioniert. Ich hab es in C++ schonmal so gemacht. Du liest jedes zeichen aus und wandelst es es in ASCII-Code um, dann bekommst du raus, ob das ein Buchstabe oder eine Zahl ist. Wenn du dann auf einen Buchstaben triffst liest du die 1 oder 2 stellen vorher aus, wandelst den String in einen Integer um und dann hast du auch schon den Namen...usw..

Hoffe ich konnte dir helfen!!!

Gruß Sonic83

Hi,

schon mal probiert es mit mit SQL zu machen ? Beim SQL Server von Microdoof sind meines wissens die Programme isql und osql dabei. Dort kannst du angeben was trennzeichen sind (z.B.: 1 oder mehrere Leerzeichen) und was das Zeilenabschlußzeichen sein soll. Dann brauchst du nur noch angeben was wohin soll (oder ob es nirgendwo reinsoll) und das Prog geht die Datei dann Zeile für Zeile durhc und liest dir die Daten in die DB ein.

Könnte auch das Programm bcp sein.

<FONT COLOR="#a62a2a" SIZE="1">[ 21. November 2001 08:39: Beitrag 1 mal editiert, zuletzt von Panther ]</font>

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.