[C# / EF] SQLite database en application updates

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Hyperz
  • Registratie: Augustus 2009
  • Laatst online: 09-07 02:45
Voor en programma maak ik gebruik van een SQLite database (entity framework). Nu zit ik met een vraag waar ik niet direct een antwoord kan voor vinden. Namelijk hoe kan ik ervoor zorgen dat de database altijd alle tables en columns heeft zonder die database (en dus alle user data) te verwijderen en opnieuw aan te maken? Bijvoorbeeld, een nieuwere versie van de applicatie gebruikt een column in een table die niet aanwezig was in de vorige versie. Hoe kan ik checken dat alle tables en columns aanwezig zijn, en zoniet, deze toevoegen?

Alvast bedankt :).

Asus P8P67 EVO | i5 2500k (4.8 GHz) | Sapphire HD 7970 Vapor-X GHz Ed. | 8 GB DDR3 1600 | 1 TB HDD


Acties:
  • 0 Henk 'm!

  • Bigs
  • Registratie: Mei 2000
  • Niet online
Daar heb je toch het Migrations package voor?

Acties:
  • 0 Henk 'm!

  • Hyperz
  • Registratie: Augustus 2009
  • Laatst online: 09-07 02:45
Even gegoogled, bedoel je dit?

Asus P8P67 EVO | i5 2500k (4.8 GHz) | Sapphire HD 7970 Vapor-X GHz Ed. | 8 GB DDR3 1600 | 1 TB HDD


Acties:
  • 0 Henk 'm!

  • Basti504
  • Registratie: Februari 2005
  • Laatst online: 11-09 20:10

Basti504

Niet de enige, wel de echte.

Bij een applicatie die SQLite gebruikt heb ik gebruik gemaakt van het interne gebruikers-versie-veld om te bepalen welke versie de database is en op basis daarvan bepaalde update's uit te voeren.

SQL:
1
PRAGMA user_version; 


Deze optie wordt niet door de SQLite engine gebruikt en is beschikbaar voor de applicatie.

http://www.sqlite.org/pragma.html#pragma_user_version

...


Acties:
  • 0 Henk 'm!

  • The Eagle
  • Registratie: Januari 2002
  • Laatst online: 00:41

The Eagle

I wear my sunglasses at night

Geen idee hoe het bij SQLite zit, maar bij oracle kan ik gewoon de datadictionary views raadplegen voor dit soort zaken :) Wellicht als je op "SQLlite datadictionary views" zoekt dat je dan al een stuk verder komt :)

Al is het nieuws nog zo slecht, het wordt leuker als je het op zijn Brabants zegt :)


Acties:
  • 0 Henk 'm!

  • Hyperz
  • Registratie: Augustus 2009
  • Laatst online: 09-07 02:45
Ik denk dat ik PRAGMA user_version ga gebruiken. Feitelijk is het weten van enkel de database versie genoeg om te weten welke updates nodig zijn. Bedankt voor de tips :) .

Asus P8P67 EVO | i5 2500k (4.8 GHz) | Sapphire HD 7970 Vapor-X GHz Ed. | 8 GB DDR3 1600 | 1 TB HDD


Acties:
  • 0 Henk 'm!

  • Remus
  • Registratie: Juli 2000
  • Laatst online: 15-08-2021
Je kan ook bijvoorbeeld tools als Liquibase gebruiken voor de versioning van je database en het upgraden van je schema.
Pagina: 1