Uso dei pragma
Il comando PRAGMA è una funzionalità di SQLite che consente di inviare una query allo schema, inviare una query e modificare i cookie dello schema e dell'utente, modificare il funzionamento della libreria SQLite ed eseguire il debug della libreria. I pragma supportati sono descritti nella classe Pragma.
L'API Database supporta i seguenti comandi Pragma:
| Pragma |
Descrizione |
|---|---|
| collation_list |
Consente di ottenere un elenco delle sequenze di confronto definite per la connessione al database corrente. Ad esempio, per ottenere un elenco di sequenze di confronto definite, eseguire l'istruzione SQL "PRAGMA collation_list;" e leggere le righe risultanti. |
| compile_options |
Consente di ottenere i nomi delle opzioni relative all'ora di compilazione, utilizzati durante la creazione del database. Ad esempio, per ottenere le opzioni di compilazione per la libreria SQLite, eseguire l'istruzione SQL "PRAGMA compile_options;" e leggere le righe risultanti. Sarà disponibile un'opzione per riga. |
database_list |
Consente di ottenere una riga per ciascun database allegato alla connessione al database corrente. Ad esempio, per ottenere un elenco dei database allegati per una connessione, eseguire l'istruzione SQL "PRAGMA database_list;" e leggere le righe risultanti. Sarà disponibile un nome database per riga. |
foreign_keys |
Consente di ottenere o impostare l'imposizione di vincoli di chiave esterna. Questa impostazione equivale all'utilizzo dell'opzione foreign_key_constraints nella classe DatabaseOptions. Ad esempio, per impostare l'imposizione di vincoli di chiave esterna, eseguire l'istruzione SQL "PRAGMA foreign_keys;" al di fuori di una transazione. |
freelist_count |
Consente di ottenere il numero di pagine inutilizzate nel database, che è possibile utilizzare per determinare il momento in cui eseguire il comando VACUUM. Ad esempio, per ottenere il numero di pagine inutilizzate in un file del database, eseguire l'istruzione SQL "PRAGMA freelist_count;" e leggere la riga risultante. |
journal_mode |
Consente di ottenere o impostare la modalità del diario della connessione al database corrente. Le impostazioni disponibili offrono prestazioni e livelli di sicurezza dei dati diversi. Tutte le opzioni, eccetto WAL e OFF, utilizzano un diario di ripristino. Le opzioni sono:
Ad esempio, per controllare la modalità del diario, eseguire l'istruzione SQL "PRAGMA journal_mode;" e leggere la riga risultante. Per modificare la modalità del diario in un registro write-ahead, eseguire l'istruzione SQL "PRAGMA journal_mode = WAL;". |
journal_size_limit |
Consente di ottenere o impostare il limite di dimensioni del diario, in byte. Ciò risulta utile quando journal_mode è impostato su PERSIST. Ad esempio, per controllare il limite di dimensioni del diario, eseguire l'istruzione SQL "PRAGMA journal_size_limit;" e leggere la riga risultante. Per impostare il limite di dimensioni del diario su 1000 byte, eseguire l'istruzione SQL "PRAGMA journal_size_limit = 1000;". |
page_count |
Consente di ottenere il numero totale di pagine nel database. |
synchronous |
Consente di impostare la modalità sincrona per il database in uso. Le opzioni sono FULL (la modalità più sicura ma più lenta, nonché quella predefinita), NORMAL e OFF. Ad esempio, per controllare la modalità sincrona, eseguire l'istruzione SQL "PRAGMA synchronous;" e leggere la riga risultante. Per modificare la modalità sincrona in OFF, eseguire l'istruzione SQL "PRAGMA synchronous = 0;". |
user_version |
Consente di ottenere o impostare una versione utente. La versione utente non è utilizzata da SQLite; è disponibile per l'utilizzo da parte dell'utente. La versione utente è un intero con firma a 32 bit. Ad esempio, per impostare la versione utente su 123, eseguire l'istruzione SQL "PRAGMA user_version = 123;". Per controllare la versione utente, eseguire l'istruzione SQL "PRAGMA user_version;" e leggere la riga risultante. |
Le informazioni sono state utili? Inviateci i vostri commenti.