Skip to main content
Wir veröffentlichen regelmäßig Aktualisierungen unserer Dokumentation, und die Übersetzung dieser Seite ist möglicherweise noch nicht abgeschlossen. Aktuelle Informationen findest du in der englischsprachigen Dokumentation.

Datenbankimport

[Erweitert][Sanitär] Importiere nicht abgeschlossene Datenbanken in eine andere nicht definierte Datenbank.

GitHub CodeQL wird nach der Installation auf Benutzerbasis lizenziert. Du kannst CodeQL nur für bestimmte Aufgaben unter den Lizenzeinschränkungen verwenden. Weitere Informationen findest du unter Informationen zur CodeQL-CLI.

Wenn du über eine GitHub Advanced Security-Lizenz verfügst, kannst du CodeQL für eine automatisierte Analyse sowie für Continuous Integration und Continuous Delivery verwenden. Weitere Informationen findest du unter Informationen zu GitHub Advanced Security.

Hier wird das neueste Release der CodeQL-CLI thematisiert. Weitere Informationen zu diesem Thema findest du unter https://github.com/github/codeql-cli-binaries/releases.

Um Details zu den Optionen anzuzeigen, die für diesen Befehl in früheren Releases verfügbar sind, führe den Befehl mit der Option --help im Terminal aus.

Übersicht

Shell
codeql database import [--dbscheme=<file>] [--threads=<num>] [--ram=<MB>] <options>... -- <database> <additionalDbs>...

Beschreibung

[Erweitert] [Sanitär] Importiere nicht abgeschlossene Datenbanken in eine andere nicht definierte Datenbank.

Das Ergebnis dieses Befehls ist, dass die Zieldatenbank (die im ersten Argument) mit den Daten aus allen anderen übergebenen Datenbanken ergänzt wird. Insbesondere werden TRAP-Dateien aus den anderen Datenbanken importiert und die darin enthaltenen Quellen kopiert.

Beachte, dass dieser Befehl in den meisten Fällen wahrscheinlich nicht die gewünschte Wirkung hat. Insbesondere kann die resultierende Datenbank den Dataflow zwischen den kombinierten Teildatenbanken nicht ordnungsgemäß nachverfolgen. Er ist nur für bestimmte erweiterte Szenarien mit verteilten Buildsystemen vorgesehen, in denen besondere Sorgfalt darauf gelegt wurde, wie der Build getrennt wurde. So soll sichergestellt werden, dass daraus eine sinnvolle, endgültige Datenbank resultiert.

Primäre Optionen

<database>

[Obligatorisch] Pfad zur CodeQL-Datenbank, die sich im Aufbau befindet. Dieser muss für die Extraktion mit codeql database init vorbereitet sein.

Wenn die Option --db-cluster angegeben ist, handelt es sich nicht um eine Datenbank als solches, sondern um ein Verzeichnis, das Datenbanken enthält. Es werden dann alle diese Datenbanken zusammen verarbeitet.

<additionalDbs>...

[Obligatorisch] Pfade zu den nicht abgeschlossenen Datenbanken, die in die erste Datenbank importiert werden sollen.

Wenn die Option --db-cluster angegeben ist, wird erwartet, dass es sich dabei um Datenbankcluster und nicht um einzelne CodeQL-Datenbanken handelt.

--[no-]db-cluster

Gibt an, dass es sich bei dem in der Befehlszeile angegebenen Verzeichnis nicht um eine Datenbank als solches handelt, sondern um ein Verzeichnis, das eine oder mehrere Datenbanken enthält, die sich im Aufbau befinden. Diese Datenbanken werden zusammen verarbeitet.

Optionen zum Steuern des TRAP-Importvorgangs

-S, --dbscheme=<file>

[Erweitert] Überschreibe die automatisch erkannte dbscheme-Definition, die die TRAP-Dateien voraussichtlich befolgen werden. Normalerweise wird diese aus dem Extraktor der Datenbank übernommen.

-j, --threads=<num>

Verwende diese Vielzahl von Threads für den Importvorgang.

Der Standardwert lautet 1. Du kannst 0 übergeben, um einen Thread pro Kern auf dem Computer zu verwenden, oder -N, um N Kerne ungenutzt zu lassen (es sei denn, es wird immer noch mindestens ein Thread verwendet).

-M, --ram=<MB>

Verwende so viel Arbeitsspeicher für den Importvorgang.

Optionen zum Überprüfen importierter TRAP-Dateien

--[no-]check-undefined-labels

[Erweitert] Melde Fehler für nicht definierte Bezeichnungen.

--[no-]check-unused-labels

[Erweitert] Melde Fehler für nicht genutzte Bezeichnungen.

--[no-]check-repeated-labels

[Erweitert] Melde Fehler für wiederholte Bezeichnungen.

--[no-]check-redefined-labels

[Erweitert] Melde Fehler für neu definierte Bezeichnungen.

--[no-]check-use-before-definition

[Erweitert] Melde Fehler für Bezeichnungen, die vor ihrer Definition verwendet werden.

--[no-]fail-on-trap-errors

[Erweitert] Beende ungleich null, wenn beim TRAP-Import ein Fehler auftritt.

--[no-]include-location-in-star

[Erweitert] Erstelle Entitäts-IDs, die den Speicherort in der TRAP-Datei codieren, aus der sie stammen. Kann für das Debuggen von TRAP-Generatoren nützlich sein, nimmt aber viel Platz im Dataset ein.

Allgemeine Optionen

-h, --help

Diesen Hilfetext anzeigen.

-J=<opt>

[Erweitert] Gib der JVM-Instanz, die den Befehl ausführt, eine Option.

(Beachte, dass Optionen, die Leerzeichen enthalten, nicht ordnungsgemäß behandelt werden.)

-v, --verbose

Erhöhe die Anzahl der ausgegebenen Statusmeldungen inkrementell.

-q, --quiet

Verringere die Anzahl der ausgegebenen Statusmeldungen inkrementell.

--verbosity=<level>

[Erweitert] Lege die Ausführlichkeitsstufe explizit auf eine der Fehler, Warnungen, Status, Status+, Status++, Status+++ fest. Überschreibt -v und -q:

--logdir=<dir>

[Erweitert] Schreibe detaillierte Protokolle in eine oder mehrere Dateien im angegebenen Verzeichnis mit generierten Namen, die Zeitstempel und den Namen des ausgeführten Unterbefehls enthalten.

(Um eine Protokolldatei mit einem Namen zu schreiben, über den du die volle Kontrolle hast, gib stattdessen --log-to-stderr an und leite stderr wie gewünscht um.)