SQLite
Questa pagina è stata tradotta da PageTurner AI (beta). Non ufficialmente approvata dal progetto. Hai trovato un errore? Segnala problema →
Installazione
- per Better SQLite:
npm install better-sqlite3
- per sql.js:
npm install sql.js
- per Capacitor, Cordova, Expo, NativeScript e React Native, consultare le piattaforme supportate.
Opzioni Data Source
Consulta Opzioni del Data Source per le opzioni comuni dei data source.
Opzioni del data source better-sqlite3
-
database- Percorso del database. Ad esempio,"mydb.sqlite". -
enableWAL- Abilita la modalità WAL (predefinitofalse). Vedi Modalità WAL di SQLite. -
fileMustExist- Se il database non esiste, viene generato un errore invece di creare un nuovo file. Non influisce sulle connessioni in memoria o di sola lettura (predefinitofalse). -
key- Chiave di crittografia per SQLCipher. -
nativeBinding- Percorso relativo o assoluto all'addon nativo (better_sqlite3.node). -
prepareDatabase- Funzione da eseguire prima di utilizzare un database in TypeORM. È possibile accedere all'oggetto Database originale di better-sqlite3 qui. -
readonly- Apre la connessione al database in modalità sola lettura (predefinitofalse). -
statementCacheSize- Dimensione della cache delle istruzioni SQLite per velocizzare le query (predefinito100). -
timeout- Numero di millisecondi di attesa durante l'esecuzione di query su un database bloccato, prima di generare un errore SQLITE_BUSY (predefinito5000). -
verbose- Funzione richiamata per ogni stringa SQL eseguita dalla connessione al database.
Opzioni del data source sql.js
-
database: Il database UInt8Array grezzo da importare. -
sqlJsConfig: Configurazione opzionale per l'inizializzazione di sql.js. -
autoSave: Abilita la persistenza automatica delle modifiche al database, richiedelocationoautoSaveCallback. Se impostato sutrue, ogni modifica viene salvata sul file system (Node.js) o sulocalStorage/indexedDB(browser) se è specificatalocation, altrimenti viene invocatoautoSaveCallback. -
autoSaveCallback: Funzione richiamata quando vengono apportate modifiche al database eautoSaveè abilitato. La funzione riceve unUInt8Arrayche rappresenta il database. -
location: Percorso del file per caricare e salvare il database. -
useLocalForage: Abilita l'utilizzo della libreria localforage per salvare e caricare il database in modo asincrono da indexedDB invece di usare i metodi sincroni di localStorage in ambiente browser. Il modulo node localforage deve essere aggiunto al progetto e localforage.js importato nella pagina.
Opzioni del data source capacitor
-
database- Nome del database (capacitor-sqlite aggiungerà il suffissoSQLite.db) -
driver- Istanza capacitor-sqlite. Ad esempio,new SQLiteConnection(CapacitorSQLite). -
mode- Imposta la modalità di crittografia del database: "no-encryption" | "encryption" | "secret" | "newsecret" -
version- Versione del database -
journalMode- Modalità journal di SQLite (opzionale)
Opzioni del data source cordova
-
database- Nome del database -
location- Posizione per salvare il database. Vedere cordova-sqlite-storage per le opzioni.
Opzioni del data source expo
-
database- Nome del database. Ad esempio, "mydb". -
driver- Modulo Expo SQLite. Ad esempio,require('expo-sqlite').
Opzioni del data source nativescript
database- Nome del database
Opzioni del data source react-native
-
database- Nome del database -
location- Posizione per salvare il database. Vedere react-native-sqlite-storage per le opzioni.
Tipi di Colonna
int, int2, int8, integer, tinyint, smallint, mediumint, bigint, decimal, numeric, float, double, real, double precision, datetime, varying character, character, native character, varchar, nchar, nvarchar2, unsigned big int, boolean, blob, text, clob, date, json, jsonb
TypeORM supporta sia i tipi json che jsonb in SQLite:
-
jsonviene memorizzato comeTEXT. -
jsonbviene memorizzato nel formato JSON binario di SQLite. TypeORM avvolge automaticamente i valori con la funzionejsonb()durante la persistenza e con la funzionejson()durante il recupero per un supporto trasparente e prestazioni migliori.
Il supporto JSONB richiede SQLite 3.45.0 o più recente. Quando si utilizza il tipo di colonna jsonb, TypeORM utilizzerà il tipo jsonb nello schema del database, che SQLite gestisce internamente come BLOB binario.