Funktionsweise mehrerer Tabellen

Beim Verwenden mehrerer Tabellen nutzen Sie Datensitzungen zum Steuern der in Formularen verfügbaren Tabellen sowie Arbeitsbereiche, um festzulegen, welche Tabellen geöffnet sind. Ein Arbeitsbereich ist ein nummerierter Bereich, der eine geöffnete Tabelle kennzeichnet. Sie können Visual FoxPro-Tabellen in 32.767 Arbeitsbereichen öffnen und bearbeiten. Arbeitsbereiche werden normalerweise durch die Anwendung anhand des Alias der im Arbeitsbereich geöffneten Tabelle identifiziert. Ein Tabellenalias ist der Name, der sich auf eine in einem Arbeitsbereich geöffnete Tabelle bezieht.

Verwenden von Datensitzungen

Zusätzlich zu den im Umgebungsfenster sichtbaren Arbeitsbereichen stellt Visual FoxPro automatisch mit Hilfe von Datensitzungen für jede Instanz eines Formulars oder Formularsatzes eine separate Umgebung bereit. Eine Datensitzung ist die Darstellung der aktuellen dynamischen Arbeitsumgebung eines Formulars, Formularsatzes oder Berichts. Jede Datensitzung enthält eine eigene Gruppe von Arbeitsbereichen. Diese Arbeitsbereiche wiederum enthalten die in ihnen geöffneten Tabellen, ihre Indizes und Beziehungen. Informationen zum Verwenden von Datensitzungen finden Sie in Kapitel 17, Programmieren für gemeinsamen Zugriff.

Anzeigen von Arbeitsbereichen

Sie können eine Liste der in einer Visual FoxPro-Arbeitssitzung geöffneten Tabellen im Datensitzungsfenster anzeigen.

So öffnen Sie das Fenster "Datensitzung"

  • Klicken Sie im Menü Fenster auf Datensitzung.

    - Oder -

  • Verwenden Sie den SET-Befehl.

Wenn Sie den SET-Befehl im Befehlsfenster ausgeben, öffnet Visual FoxPro das Datensitzungsfenster und zeigt die Arbeitsbereichaliase für die in der aktuellen Datensitzung geöffneten Tabellen an.

Öffnen einer Tabelle in einem Arbeitsbereich

Sie können eine Tabelle in einem Arbeitsbereich entweder im Datensitzungsfenster oder mit dem USE-Befehl öffnen.

So öffnen Sie eine Tabelle in einem Arbeitsbereich

  • Klicken Sie im Fenster Datensitzung auf Öffnen.

    - Oder -

  • Geben Sie im Befehlsfenster den USE-Befehl ein.

Zum Öffnen einer Tabelle im niedrigsten verfügbaren Arbeitsbereich verwenden Sie den USE-Befehl mit der IN-Klausel beim Arbeitsbereich 0. Sind beispielsweise Tabellen in den Arbeitsbereichen 1 bis 10 geöffnet, öffnet der folgende Befehl die Tabelle customer im Arbeitsbereich 11.

USE customer IN 0

Oder klicken Sie im Menü Datei auf Öffnen, um eine Tabelle in einem Arbeitsbereich zu öffnen.

Schließen einer Tabelle in einem Arbeitsbereich

Sie können eine Tabelle in einem Arbeitsbereich entweder im Datensitzungsfenster oder mit der Sprache schließen.

So schließen Sie eine Tabelle in einem Arbeitsbereich

  • Klicken Sie im Fenster Datensitzung auf den Alias der gewünschten Tabelle, und klicken Sie anschließend auf Schließen.

    - Oder -

  • Geben Sie USE ohne einen Tabellennamen ein.

    - Oder -

  • Verwenden Sie den USE-Befehl mit der IN-Klausel, um auf den Arbeitsbereich der zu schließenden Tabelle Bezug zu nehmen.

Wenn Sie den USE-Befehl ohne einen Tabellennamen ausgeben und im ausgewählten Arbeitsbereich eine Tabellendatei geöffnet ist, wird die Tabelle geschlossen. Beispielsweise öffnet der folgende Code die Tabelle customer, zeigt ein Datenblattfenster an und schließt die Tabelle wieder:

USE customer 
BROWSE
USE

Eine Tabelle wird auch automatisch geschlossen, wenn Sie eine andere Tabelle in demselben Arbeitsbereich öffnen oder wenn Sie den USE-Befehl mit der IN-Klausel ausgeben und auf den aktuellen Arbeitsbereich Bezug nehmen. Der folgende Code öffnet die Tabelle customer, zeigt sie an und schließt sie wieder durch Ausgeben von USE IN und dem Tabellenalias customer:

USE customer 
BROWSE
USE IN customer

Es ist nicht möglich, mehrere Tabellen gleichzeitig in einem Arbeitsbereich geöffnet zu haben.

Bezug nehmen auf einen Arbeitsbereich

Sie können auf den nächsten verfügbaren Arbeitsbereich Bezug nehmen, bevor Sie eine Tabelle öffnen, indem Sie die Arbeitsbereichnummer verwenden, wie es im folgenden Beispiel gezeigt wird.

SELECT 0

Siehe auch

Verbessern der Effizienz von Indizes | Funktionsweise von Tabellenaliasnamen | Arbeiten mit Datensätzen | Festlegen von temporären Beziehungen zwischen Tabellen | Einrichtung persistenter Beziehungen mit Indizes | Ordnen nach mehreren Feldern