Freigeben über


Beschleunigung von Abfragen und Ansichten

Sie können das Leistungsverhalten von Abfragen und Ansichten verbessern, indem Sie Indizes hinzufügen sowie neben der lokalen Verarbeitung und der Remoteverarbeitung auch die Parameterausdrücke optimieren.

Hinzufügen von Indizes zu Remotetabellen

Remoteindizes können bewirken, dass Abfragen erheblich schneller verarbeitet werden. Abfragen, die sich über mehrere Tabellen erstrecken, werden schneller ausgeführt, wenn die beteiligten Tabellen nach den Verknüpfungsfeldern indiziert sind. Das Leistungsverhalten kann weiter verbessert werden, wenn die Felder indiziert sind, die in der WHERE-Klausel einer Abfrage angegeben sind.

Die besten Ergebnisse in Bezug auf die Leistung werden mit gruppierten Indizes erzielt. In SQL Server kann jede Tabelle einen gruppierten Index haben. Der SQL Server Upsizing-Assistent erstellt für eine Tabelle, die in Visual FoxPro einen Primärschlüssel hat, automatisch einen gruppierten Index.

Tipp   Abfragen, die auf indizierten Tabellenfeldern basieren, werden meist schneller verarbeitet. Bei indizierten Resultsets dagegen kann sich die Verarbeitung verlangsamen. Setzen Sie daher Indizes in Resultsets mit Vorsicht ein.

Optimieren der lokalen Verarbeitung und der Remoteverarbeitung

Wenn Sie gleichzeitig lokale und Remotedaten verarbeiten müssen, sollten Sie eine Remoteansicht erstellen, in der alle Remotedaten zusammengefasst sind. Sie können die Remoteansicht dann in einer lokalen Ansicht mit den lokalen Daten verknüpfen. Da Visual FoxPro beide Ansichten vollständig abruft, bevor die Ansicht mit den zusammengefassten Daten verknüpft und gefiltert wird, ist es wichtig, das Resultset der Ansicht einzuschränken.

Sie erzielen die optimale Geschwindigkeit für die Remoteverarbeitung, indem Sie das Resultset der Remoteansicht auf die Datenmenge reduzieren, die tatsächlich von Ihrer Anwendung benötigt wird. Wenn Sie weniger Daten in ein Remoteresultset abrufen, verkürzen Sie die Zeit, die erforderlich ist, die Remotedaten in den Cursor Ihrer lokalen Abfrage oder Ihrer lokalen Ansicht herunterzuladen.

Optimieren parametrisierter Ansichten

Sie können den Datenabruf von REQUERY( )-Operationen auf einer geöffneten, parametrisierten Ansicht beschleunigen, indem Sie die Ansicht vor dem Ausführen kompilieren. Um eine Ansicht vorzukompilieren oder "vorzubereiten", legen Sie die Prepared-Eigenschaft der Ansicht auf Wahr (.T.) fest.

Optimieren von Parameterausdrücken

Sowohl die Parameter einer Ansicht als auch SQL Pass-Through-Parameter sind Visual FoxPro-Ausdrücke, die von Visual FoxPro ausgewertet werden, bevor sie an den Remoteserver gesendet werden. Die zur Auswertung dieser Ausdrücke erforderliche Zeit ist zu berücksichtigen, da sie die Verarbeitungszeit der jeweiligen Abfrage verlängert.

Siehe auch

Beschleunigen des Abrufens von Daten | Beschleunigung von Formularen | Client/Server-Leistungsoptimierung | Leistungsverbesserung bei Aktualisierungs- und Löschvorgängen | Implementieren einer Client/Server-Anwendung