2010-05-09 17 views
5

Sto utilizzando la libreria sqlite integrata sulla piattaforma Android.I campi dati SQLite null occupano memoria extra?

Sto pensando di aggiungere diversi campi generici che gli utenti saranno in grado di utilizzare per le proprie applicazioni personalizzate, ma questi campi rimarranno vuoti per la maggior parte del tempo.

La mia domanda è, quanto sovraccarico aggiungeranno questi campi vuoti al mio database? I campi null occupano anche memoria per record in sqlite? se cosi, quanto? Non capisco perfettamente il funzionamento interno di un database SQLite.

risposta

6

Il formato di file SQLite è descritto here. Un campo NULL richiederà un byte.

Un modo per fornire campi personalizzati/facoltativi consiste nel metterli in una tabella separata con una chiave esterna che identifica il record corrispondente. Quindi non è richiesto alcun record aggiuntivo se non ci sono campi personalizzati, anche se ci sarà bisogno di fare join per raccogliere tutti i campi quando ci sono campi personalizzati.

+1

Sto già utilizzando un'impostazione molti-a-molti che collega queste note al resto del mio database e unire più tabelle nel mix diventerebbe molto complicato. – CodeFusionMobile