dedlfix: Datei verarbeiten

Beitrag lesen

Hi!

Selbst zerteilen ist aufwendig, weil du dir einen Parser schreiben musst, der genau weiß, ob ein ; innerhalb von Daten oder zwischen zwei SQL-Statements steht. Nur wenn du das innerhalb von Daten ausschließen kannst, dann kannst du am ; explodieren lassen.
Naja, darum gehts halt.
Ich könnte auch das ; gegen |*#| austauschen oder so.
Das könnte ich nämlich ziemlich sicher ausschließen, dass das nochmal in Strings vorkommt.

In den Daten? Das wäre Unfug, nur wegen diesem einen Problem sich für die anderweitige Verarbeitung weitere aufzuhalsen.

Bleiben aber dennoch die restlichen Fragen.
Du meinst, ich soll dann die knapp 3000 Abfragen alle in eine Variable einlesen und anhand des Delimiters trennen und das Array abarbeiten?

Ich meinte nichts konkretes, weil mir die Größenordnung nicht bekannt war, um die es geht. Und ich sortierte meine Vorschläge in der vorigen Antwort auch von der besten zur aufwendigsten Lösung. Wenn du wirklich den dritten Weg gehen willst, so war ich auch hier nicht konkret bei der Aufzeigung eines möglichen Lösungswegs. Beim kompletten Einlesen könntest du ein Speicherproblem bekommen. Und wenn du nicht exploden lassen willst (weil es nicht sinnvoll geht), brauchst du kein komplettes Einlesen. Zum Parsen reicht schrittweises Lesen in Form von kleinen Blöcken. Wann immer du dann ein ; als Statementtrenner erkannt hast, kannst du selbiges abschicken.

Lo!