Verwenden von Pragmas
Der PRAGMA-Befehl ist eine Funktion von SQLite, die Ihnen ermöglicht, ein Schema abzufragen, das Schema-Cookie und das Benutzer-Cookie abzufragen und zu ändern, die Operation der SQLite-Bibliothek zu ändern und ein Debugging für die Bibliothek durchzuführen. Unterstützte Pragmas sind in der Pragma-Klasse dokumentiert.
Die Datenbank-API unterstützt die folgenden Pragma-Befehle:
| Pragma |
Beschreibung |
|---|---|
| collation_list |
Ruft eine Liste der Sortierreihenfolgen ab, die für die aktuelle Datenbankverbindung definiert sind. Um zum Beispiel eine Liste definierter Sortierreihenfolgen abzurufen, führen Sie die SQL-Anweisung "PRAGMA collation_list;" aus, und lesen Sie die resultierenden Zeilen. |
| compile_options |
Ruft die Namen der Kompilierzeitoptionen ab, die beim Erstellen der Datenbank verwendet werden. Um zum Beispiel die Kompilierungsoptionen für die SQLite-Bibliothek abzurufen, führen Sie die SQL-Anweisung "PRAGMA compile_options;" aus, und lesen Sie die resultierenden Zeilen. Jede Zeile enthält genau eine Option. |
database_list |
Ruft eine Zeile für jede Datenbank ab, die an die aktuelle Datenbankverbindung angefügt ist. Um zum Beispiel eine Liste der angefügten Datenbanken für eine Verbindung abzurufen, führen Sie die SQL-Anweisung "PRAGMA database_list;" aus, und lesen Sie die resultierenden Zeilen. Jede Zeile enthält genau einen Datenbanknamen. |
foreign_keys |
Ruft die Durchsetzung von Fremdschlüssel-Beschränkungen ab oder legt sie fest. Diese Einstellung entspricht der Verwendung der foreign_key_constraints-Option in der DatabaseOptions-Klasse. Um zum Beispiel die Durchsetzung von Fremdschlüssel-Beschränkungen festzulegen, führen Sie die SQL-Anweisung "PRAGMA foreign_keys;" außerhalb einer Transaktion aus. |
freelist_count |
Ruft die Anzahl ungenutzter Seiten in der Datenbank ab, die Sie verwenden können, um zu bestimmen, wann der VACUUM-Befehl ausgeführt werden muss. Um zum Beispiel die Anzahl ungenutzter Seiten in einer Datenbankdatei abzurufen, führen Sie die SQL-Anweisung "PRAGMA freelist_count;" aus, und lesen Sie die resultierende Zeile. |
journal_mode |
Ruft den Journal-Modus der aktuellen Datenbankverbindung ab oder legt ihn fest. Die verfügbaren Einstellungen bieten unterschiedliche Leistungs- und Datensicherheitsstufen. Alle Optionen außer WAL und OFF verwenden ein Rollback-Journal. Die Optionen sind folgende:
Um zum Beispiel den Journal-Modus zu prüfen, führen Sie die SQL-Anweisung "PRAGMA journal_mode;" aus, und lesen Sie die resultierende Zeile. Um den Journal-Modus in ein Write-Ahead-Protokoll zu ändern, führen Sie die SQL-Anweisung "PRAGMA journal_mode = WAL;" aus. |
journal_size_limit |
Ruft die Journal-Größenbeschränkung (in Byte) ab, oder legt sie fest. Dies ist nützlich, wenn journal_mode auf PERSIST gesetzt ist. Um zum Beispiel die Journal-Größenbeschränkung zu prüfen, führen Sie die SQL-Anweisung "PRAGMA journal_size_limit;" aus, und lesen Sie die resultierende Zeile. Um die Journal-Größenbeschränkung auf 1000 Byte zu setzen, führen Sie die SQL-Anweisung "PRAGMA journal_size_limit = 1000;" aus. |
page_count |
Ruft die Gesamtanzahl von Seiten in der Datenbank ab. |
synchronous |
Legt für Ihre Datenbank den synchronen Modus fest. Die Optionen sind FULL (der sicherste, aber langsamste Modus und der Standard), NORMAL und OFF. Um zum Beispiel den synchronen Modus zu prüfen, führen Sie die SQL-Anweisung "PRAGMA synchronous;" aus, und lesen Sie die resultierende Zeile. Um den synchronen Modus zu ändern OFF, führen Sie die SQL-Anweisung "PRAGMA synchronous = 0;" aus. |
user_version |
Ruft eine Benutzerversion ab oder legt eine fest. Die Benutzerversion wird nicht von SQLite verwendet. Sie steht Ihnen zur Verfügung. Die Benutzerversion ist eine signierte 32-Bit-Ganzzahl. Um zum Beispiel die Benutzerversion auf 123 zu setzen, führen Sie die SQL-Anweisung "PRAGMA user_version = 123;" aus. Um die Benutzerversion zu prüfen, führen Sie die SQL-Anweisung "PRAGMA user_version;" aus, und lesen Sie die resultierende Zeile. |
Waren diese Informationen hilfreich? Senden Sie uns Ihren Kommentar.