Um den Überblick darüber zu behalten, welche Indizes für eine Tabelle vorhanden sind und wie diese konfiguriert sind, war bisher eine manuelle Überprüfung über den Struktur-Editor erforderlich. Mit der neuen Funktion „getIndexes()“ können 4D-Entwickler nun Indizes direkt aus dem Code heraus untersuchen. Dies erleichtert die Überprüfung der Konfiguration zur Laufzeit, die Erstellung von Diagnosetools oder die automatische Validierung von Bereitstellungen.
4D fügt eine neue Funktion hinzu, um Indizes direkt aus dem Code heraus zu untersuchen:
var $indexes := ds.MyTable.getIndexes()
Der Aufruf von `getIndexes()` für eine Tabelle gibt eine Sammlung zurück, die jeden für diese Tabelle definierten Index beschreibt, unabhängig davon, ob er über den Struktur-Editor oder per Code mit ` CREATE INDEX` erstellt wurde.
Details zu Indexeinträgen
Jeder Eintrag in der zurückgegebenen Sammlung beschreibt einen Index mit den folgenden Attributen:
| Attribut | Typ | Beschreibung |
|---|---|---|
type |
Ganzzahl | Typ des Indexalgorithmus (relevant, wenn „Automatisch“ ausgewählt ist) |
automatisch |
Boolescher Wert | Wahr, wenn der Index „Automatisch“ ausgewählt ist |
name |
text | Indexname, falls verfügbar |
Art |
text | „Schlüsselwörter“ oder „regulär“ |
Attribute |
Sammlung | Vom Index abgedeckte Felder |
UUID |
text | Eindeutige Kennung des Indexes |
uniqueKey |
bool | Gibt an, ob der Index Eindeutigkeit erzwingt |
Dadurch lässt sich der Status des Indexes eines Feldes zur Laufzeit überprüfen, was insbesondere für die Diagnose und automatisierte Bereitstellungsskripte nützlich ist.

var $indexes:=ds.Discuss.getIndexes()

Die Vorteile
Vor der Einführung von `getIndexes()` musste man den Struktur-Editor öffnen und manuell überprüfen, ob ein kritischer Index vorhanden war oder mit dem richtigen Algorithmus konfiguriert war. Das lässt sich für automatisierte Workflows nicht skalieren. Mit dieser Funktion können Sie:
- Bereitstellungen validieren: Überprüfen Sie unmittelbar nach einer Strukturaktualisierung oder einer Datenbankmigration, ob alle erwarteten Indizes vorhanden sind.
- Diagnosetools erstellen: Die Indexkonfiguration in einem Admin-Panel oder einem Endpunkt für Zustandsprüfungen anzeigen.
- Eindeutigkeitsbeschränkungen prüfen: Schnell feststellen, welche Felder durch einen `uniqueKey`-Index geschützt sind.
- Den Indextyp identifizieren: Unterscheiden Sie zwischen Standard-, Keyword- und Vektorindizes (Cosine, Dot, Euclidean), indem Sie die Attribute „type“ und „kind“ überprüfen.
Fazit
getIndexes() schließt eine Lücke in der Indexverwaltungs-API von 4D: Entwickler müssen sich nicht mehr auf die Benutzeroberfläche verlassen, um zu erfahren, welche Indizes für eine Tabelle vorhanden sind. In Kombination mit CREATE INDEX, SET INDEXund DELETE INDEXvervollständigt es einen vollständig programmatischen Arbeitsablauf für die Verwaltung von Indizes.
Für diesen Beitrag sind derzeit keine Kommentare verfügbar.