ODBC-Verhalten
Nach dem Testen des ODBC-Treibers können Sie ihn verwenden, um Ihre Instanzdatenbank aus einer Vielzahl von Client-Anwendungen abzufragen.
ODBC-Aggregatfunktionen
Der ODBC-Treiber versucht, Daten herunterzuladen und Aggregatfunktionen lokal anzuwenden. Der ODBC-Treiber unterstützt die folgenden Aggregatfunktionen.
- ANZAHL
- SUMME
- MIN
- MAX
- DURCHSCHNITT
Aktivieren Sie das Plugin „Webservice zusammenfassen“, um die Leistung aggregierter Abfragen über den ODBC-Treiber zu verbessern.
ODBC-Datums- und -Uhrzeitwerte
Die Instanz und der Computer, auf dem der ODBC-Treiber installiert ist, können zwei verschiedene Zeitzonen verwenden. Datums- und Uhrzeitwerte, die vom ODBC-Treiber zurückgegeben werden, befinden sich in der lokalen Zeitzone der Anwendung, die den Treiber verwendet, nicht in der Zeitzone der ServiceNow-Instanz.
Stellen Sie sicher, dass Sie sowohl für die Instanz als auch für den Computer, der den ODBC-Treiber hostet, genaue Zeitzonen abfragen. GlideRecord führt eine Filterung basierend auf der Instanzzeitzone durch, und der ODBC-Client wird basierend auf der Windows-Zeitzone gefiltert.
Beispiel: Eine Instanz befindet sich in der zentralen Standardzeit (CST), und der ODBC-Treiber wird auf einem Computer installiert, der sich in der Pazifik-Standardzeit (PST) befindet. Ein Incident wird in der Instanz unter erstellt 20.5-20 10:00:00 2014 , Und die Zeit, zu der der Incident erstellt wurde, wird in der Anwenderoberfläche als angezeigt 10:00:00 Für Anwender in beiden Zeitzonen. Um diesen Incident jedoch erfolgreich nach Erstellungsdatum und -Uhrzeit abzufragen, muss ein Anwender auf dem Computer in PST abfragen 20.5-20 08:00:00 2014 Anstelle von 20.5-20 10:00:00 2014 .
Felder für Dauer und Timer-Typ werden mit der UTC-Zeitzone zurückgegeben, beginnend mit ODBC-Version 1,0.10. Siehe KB0583982 Für Details zu diesem Change.
ODBC-Anzeigewerte
Einige Beispiele für die Verwendung und die Arbeit mit ODBC-Anzeigewerten werden unten angezeigt.
- Werte in anzeigen Auswahl Und Referenz Spalten:
Beim Abfragen einer Spalte vom Typ Auswahl , Referenz , Dauer , Oder Timer , Eine zusätzliche Spalte mit dem Präfix
dv_Ist verfügbar, das den Anzeigewert enthält. Sie können beispielsweise auswählen dv_caller_ID Um zurückzugeben sys_user.name Anzeigewert des Referenzfelds aus einem Incident-Datensatz, ohne eine weitere Anforderung an die Tabelle „sys_user“ zu stellen.Abbildung : 1. Geben Sie den Anzeigewert zurück - Werte in Filterbedingungen anzeigen:
Anzeigewerte können auch in einer Filterbedingung verwendet werden. Der ODBC-Treiber optimiert die Abfragebedingung und verarbeitet den Filter auf dem Server, z. B. die Abfrage des Anzeigewerts von sys_user Für Anrufer_ID Feld eines Incidents mithilfe von dv_caller_ID Feldname.
Abbildung : 2. Zeigen Sie Werte in Filterbedingungen an - Werte in Aggregatabfragen anzeigen:
Aggregatabfragen können auch Anzeigewerte nutzen, wenn Sie sie in der Klausel „Gruppieren nach“ oder „WHERE“ angeben, z. B. Gruppierung auf Anrufer_ID Feld eines Incidents sowie Angabe eines Filters dafür. Die Abfrage wird durch Übergabe an den Server optimiert.
Abbildung : 3. Zeigt Werte in Aggregatabfragen an
Tabellen- und Spaltennamen werden abgefragt
Sie können eine Liste der zugänglichen Tabellen und Spalten basierend auf den Lese-ACLs für den abfragenden Anwender abrufen.
- Die folgende Abfrage gibt die Namen aller Tabellen zurück, für die der abfragende Anwender Lesezugriff hat:
* Aus OA_tables auswählen; - Nachdem Sie den Namen der abzufragenden Tabelle kennen, können Sie die Namen aller Spalten abfragen, für die der Anwender Lesezugriff hat. Der abfragende Anwender muss Lesezugriff für die Tabelle und die Spalten haben.
* Aus OA_columns auswählen, wobei table_Name=„table_Name“;
ODBC-Aufrufe werden an Lesereplikat weitergeleitet
Die Abfrageweiterleitung erfolgt, um die primäre Datenbank für AUSGEWÄHLTE Abfragen zu entlasten, die in der primären DB zahlreiche DB-CPU-Zyklen dauern. Weitere Informationen finden Sie unter Einführung in ServiceNow – Replikatdatenbanken lesen .
Wechseln Sie zum Weiterleiten von ODBC-Aufrufen zum Lesen von Replikaten zu Und festgelegt odbc Bis Wahr .