Il manuale dello sviluppatore Android sembra preferire FTS3 in SQLite DB quando è necessaria la ricerca. Ho letto la descrizione di FTS3 e sembra che crea una tabella virtuale invece di una tabella permanente. Qual è la differenza tra la tabella virtuale (FTS3) e la tabella normale in SQLite? La tabella virtuale è permanente e rimane nel database anche dopo aver chiuso l'app? Grazie.Tabella normale vs tabella virtuale SQLite DB
risposta
Una tabella virtuale consente al motore SQLite di accedere ai contenuti di un archivio dati, utilizzando il codice (solitamente) non SQLite. Ciò consente allo sviluppatore di aggiungere funzionalità personalizzate a SQLite.
Nel caso di FTS, originariamente non faceva parte del motore SQLite. Era un codice esterno a SQLite, che permetteva all'utente finale di eseguire una ricerca di testo completa sui dati.
È un tavolo virtuale permanente? Dipende dall'implementazione. Per FTS i dati sono permanenti. Tuttavia, è possibile creare un'implementazione che utilizza la memoria RAM per l'archiviazione, che ovviamente scomparirà quando l'applicazione verrà chiusa.
Altro su tavoli virtuali: http://www.sqlite.org/vtab.html
Penso che sia più esatto dire che la guida API per la creazione di un'interfaccia di ricerca rileva che FTS3 fa ricerca full-text molto più veloce di LIKE, a seconda delle caratteristiche del ricerca. Ad esempio, una normale query SQLite che utilizza LIKE consente i caratteri jolly, mentre una query FTS3 che utilizza MATCH non lo fa. Se si desidera cercare i token, si consiglia di utilizzare FTS3. Se stai facendo una partita imprecisa, devi assolutamente andare con LIKE.
- 1. Tabella virtuale full text SQLite normalmente utilizzabile?
- 2. Spiegazione della tabella virtuale
- 3. Tabella vs Tabella temporanea Prestazioni
- 4. Ordina un'intera tabella SQLite
- 5. Tabella vs TLB
- 6. Tabella SQLite con fusione Git
- 7. SQLite python non aggiorna tabella
- 8. Inserisci null nella tabella Sqlite
- 9. Creazione database SQLite e tabella
- 10. lexer basato su tabella diretto vs tabella?
- 11. SQLite crea una tabella FTS prepopolata
- 12. Visualizza tabella vs volatile?
- 13. Perché abbiamo bisogno della tabella virtuale?
- 14. tabella virtuale danneggiata visual studio bug
- 15. Copia tabella in un db ad un altro db
- 16. ponteggio per modello esistente e tabella DB
- 17. Sementi Rails: come troncare la tabella DB?
- 18. posizione del puntatore della tabella di funzione virtuale nell'oggetto
- 19. inserto sqlite nella tabella select * from
- 20. Eccezione SQLite: nessuna tabella tale errore
- 21. SQLite FMDB creazione tabella - principiante iOS
- 22. SQLite supporta le espressioni di tabella comuni?
- 23. Problema SQLite con nomi tabella utilizzando numeri?
- 24. Tabella pivot vs. Pivot Cache
- 25. web.Config vs Tabella impostazioni database
- 26. Vs. Layout griglia. Tabella Layout
- 27. come aggiungere una colonna in una tabella sqlite in SWIFT
- 28. Comando SQL per estrarre lo schema di una tabella SQLite?
- 29. Numero massimo di righe in una tabella sqlite?
- 30. Python non salva i dati SQLite db
Penso che i caratteri jolly siano consentiti anche quando si utilizza MATCH. Devi solo mettere * basato su ciò che ho letto sul sito Web SQLite. – androidnerd