Hoe een tabel op te slaan die in de database staat in plaats van de database op te slaan

Ik wil een tabelbestand opslaan in de database, die veel tabellen bevat, maar ik wil de database niet opslaan, omdat ik het tabelbestand zo nodig zal herstellen en andere tabellenbestanden de oorspronkelijke status behouden. Is er een manier?

2

1 antwoord

Enige ideeën:

  1. Copy the original database and only use the copy. This approach is simple and doesn't require the code to do anything "special" to not leave changes. However, it makes it hard to persist any data back to the original -- but see below for a nifty trick!
  2. Use an attached database. Only update tables in the attached database. The code has to be modified to only use tables from the attached database. Modifications to tables in the primary database will still be saved. The attached database can be deleted (or left alone) as needed. Attached databases are a good way to move data between different SQLite data files!
  3. Use a temporary table (and see this SO post). Then delete the table when done (or let SQLite delete it). Again, this requires the code to play nice and not modify other tables.
  4. Just don't put the data in the DB :-)

Een SQLite-database kan ook "alleen-lezen" worden geopend, maar dit heeft ook andere implicaties.

Veel plezier met coderen!

0
toegevoegd
@ BigBang Net als in de documentatielink: ATTACH DATABASE [pad] ALS [naam] SQL-opdracht (gewoon "uitvoeren") :-) De methode getAttachedDatabases() in Android kan worden gebruikt om te zien wat is bijgevoegd. zie: stackoverflow.com/questions/5503414/… voor een voorbeeld
toegevoegd de auteur user166390, de bron
ten eerste, bedankt voor het geven van enkele ideeën. Ik wil het tweede idee gebruiken. kun je een aantal demo's aanbieden voor het gebruik van bijgevoegde database?
toegevoegd de auteur Big Bang, de bron