Anmelden

View Full Version : Teildatei mit SQL anzeigen



Rico
06-07-06, 14:54
Hallo zusammen,

ich stehe gerade vor folgendem Problem:

Ich habe eine Datei mit ca. 270 Teildateien und ich möchte mir den Inhalt der Teildateien anzeigen und weiterverwenden. Hatte da an embedded SQL gedacht. Doch irgendwie schaffe ich es nicht, per SQL auf die Teildatei zuzugreifen. Es wird scheinbar immer automatisch *FIRST verwendet und ich habe zumindest bisher nicht Stelle gefunden, wo ich den Namen der Teildatei eingeben kann, die ich sehen möchte.

Bei DSPPFM kann ich das zwar angeben und mir dann auch anzeigen, aber halt leider nur anzeigen :confused: . Ich möchte den Inhalt aber gern programmtechnisch weiterverwenden...

Hat irgendjemand eine Idee??? Wäre wirklich für jede Hilfe dankbar!

Gruß, Rico

kuempi von stein
06-07-06, 15:02
Hello,

eine Möglichkeit z.B. wäre ein OVR vorher.

k.

Zusatzänderung:
So, sorry, bin wohl etwas maulfaul heute, muss an der Hitze liegen.

Also entweder Du machst vorher nen OVRDBF auf das entsprechende Member, ODER Du könntest in SQL auch mit create ALIAS arbeiten, da kann man auch nen Member angeben.

k.

Fuerchau
06-07-06, 15:11
SQL kennt nur Tabellen, und die haben nur 1 Teildatei.
Wie Kümpi schon sagt, vor dem "Open Cursor" einen OVRDBF auf die Teildatei setzen.

Achtung: "Close Cursor" muss auch tatsächlich schliessen (set option).

2. Alternative:
"Create Alias", allerdings für jede Teildatei einzeln.

3. Alternative
OVRDBF ... MBR(*ALL)
Alle Teildateien werden wie eine einzige gehandelt, allerdings gibts keine Info, welche Teildatei denn gerade im Zugriff ist.

B.Hauser
06-07-06, 16:25
3. Alternative
OVRDBF ... MBR(*ALL)
Alle Teildateien werden wie eine einzige gehandelt, allerdings gibts keine Info, welche Teildatei denn gerade im Zugriff ist.

Funktioniert nur nicht mit SQL!
SQL kann immer nur eine einzige Teil-Datei verarbeiten!

Man kann sich mehrere Teil-Dateien über Aliases (oder Overrides des einzelnen Teildateien) und Union-Anweisungen zusammenmischen, aber das ist schon alles.

Den Hard Close über SET OPTION erzwingen zu wollen ist nicht erforderlich. Im Programm reicht das SQL-Statement CLOSE. Der Hard Close, bzw. das Löschen des ODPs erfolgt spätestens beim nächte OPEN auf das Statement. Der Optimizer kennt die Overrides und weiß, dass bei Änderung ein neuer Zugriffs-Weg erforderlich ist. (Überigens auch die Änderung der Bibliotheks-Liste führt bei unqualifizierten Angaben in SQL-Statements zu HARD CLOSES).

Birgitta
Birgitta