ODBC-Verhalten
Nach dem Testen des ODBC-Treibers können Sie ihn verwenden, um Ihre Instanzdatenbank aus einer Vielzahl von Client-Anwendungen abzufragen.
ODBC-Zusammenfassungsfunktionen
Der ODBC-Treiber versucht, Daten herunterzuladen und lokal Zusammenfassungsfunktionen anzuwenden. Der ODBC-Treiber unterstützt die folgenden Zusammenfassungsfunktionen.
- ANZAHL
- SUMME
- MIN
- MAX
- DURCHSCHNITT
Aktivieren Sie das Plugin „Webservice zusammenfassen“, um die Leistung von aggregierten Abfragen über den ODBC-Treiber zu verbessern.
ODBC-Datums- und Uhrzeitwerte
Die Instanz und der Computer, auf dem der ODBC-Treiber installiert ist, verwenden möglicherweise zwei unterschiedliche Zeitzonen. Vom ODBC-Treiber zurückgegebene Datums- und Uhrzeitwerte befinden sich in der lokalen Zeitzone der Anwendung, die den Treiber verwendet, nicht in der Zeitzone der ServiceNow-Instanz.
Stellen Sie sicher, dass Sie in genauen Zeitzonen für die Instanz und den Computer, auf dem sich der ODBC-Treiber befindet, abfragen. GlideRecord führt eine Filterung basierend auf der Instanzzeitzone durch, und der ODBC-Client wird basierend auf der Windows-Zeitzone gefiltert.
Eine Instanz befindet sich beispielsweise in Central Standard Time (CST), und der ODBC-Treiber ist auf einem Computer installiert, der sich in Pacific Standard Time (PST) befindet. Ein Incident wird in der Instanz um 2014-05-20 10:00:00 erstellt und der Zeitpunkt, zu dem der Incident erstellt wurde, wird in der Benutzeroberfläche als 10:00:00 für Benutzer in beiden Zeitzonen angezeigt. Um diesen Incident jedoch erfolgreich nach Erstellungsdatum und -zeit abzufragen, muss ein Benutzer auf dem Computer in PST eine Abfrage nach 2014-05-20 08:00:00 anstatt nach 2014-05-20 10:00:00 durchführen.
Felder für Dauer und Timer-Typ werden mit der UTC-Zeitzone zurückgegeben, beginnend mit ODBC-Version 1,0.10. Weitere Informationen zu diesen Änderungen finden Sie unter KB0583982.
ODBC-Anzeigewerte
Nachfolgend sind einige Beispiele für die Verwendung und Verwendung von ODBC-Anzeigewerten aufgeführt.
- Werte in den Spalten Wahl und Referenz anzeigen:
Beim Abfragen einer Spalte vom Typ Wahl, Referenz, Dauer, oder Timer ist eine zusätzliche Spalte mit dem Präfix
dv_verfügbar, die den Anzeigewert enthält. So können Sie beispielsweise dv_caller_id wählen, um den Anzeigewert sys_user.name des Referenzfelds aus einem Incident-Datensatz zurückzugeben, ohne eine weitere Anforderung an die Tabelle sys_user zu stellen.Abbildung : 1. Den Anzeigewert zurückgeben - 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. Abfrage des Anzeigewerts sys_user für das Feld caller-id eines Incident unter Verwendung des Feldnamens dv_caller_id.
Abbildung : 2. Werte in Filterbedingungen anzeigen - Werte in zusammengefassten Abfragen anzeigen:
Zusammengefasste Abfragen können auch Anzeigewerte nutzen, wenn Sie sie in „Gruppieren nach“ oder der Wo-Klausel angeben, z. B. Gruppieren nach dem Feld caller-id eines Incident sowie Angabe eines Filters dafür. Die Abfrage wird durch Weitergabe an den Server optimiert.
Abbildung : 3. Werte in zusammengefassten Abfragen anzeigen
Abfragen von Tabellen- und Spaltennamen
Sie können eine Liste der zugänglichen Tabellen und Spalten basierend auf den gelesenen ACLs für den abfragenden Benutzer erhalten.
- Die folgende Abfrage gibt die Namen aller Tabellen zurück, für die der abfragende Anwender Lesezugriff hat:
select * from oa_tables; - Nachdem Sie den Namen der Tabelle kennen, die Sie abfragen möchten, können Sie die Namen aller Spalten abfragen, für die der Benutzer Lesezugriff hat. Der abfragende Benutzer muss über Lesezugriff für die Tabelle und die Spalten verfügen.
select * from oa_columns where table_name=‘table_name’;
Weiterleitung von ODBC-Aufrufen an Lese-Replikat
Die Abfrageweiterleitung erfolgt, um die primäre Datenbank für AUSGEWÄHLTE Abfragen zu entlasten, die zahlreiche DB-CPU-Zyklen in der primären DB benötigen. Weitere Informationen finden Sie unter Einführung in ServiceNow – Replikatdatenbanken lesen .
Um ODBC-Aufrufe an das Lesen des Replikats weiterzuleiten, wechseln Sie zu Und festgelegt odbc Bis Wahr .