2010-04-08 11 views
3

Voici la situation. J'ai une application Windows qui utilise une base de données d'accès pour stocker les informations. Tout s'est bien passé. Maintenant, je vais sortir une nouvelle version avec un fichier d'accès mis à jour (2 nouvelles tables, 1 ancienne table avec une nouvelle colonne). Mais les gens qui ont utilisé l'application, je ne veux pas qu'ils perdent leurs informations lors de la mise à niveau vers la nouvelle version.J'utilise le déploiement en un seul clic mais j'ai un nouveau fichier d'accès mais j'ai besoin de l'ancien

Quelle est la meilleure façon de gérer cette situation? J'utilise Visual Studio 2008 et vb.net pour écrire l'application de formulaire Windows.

Merci

Répondre

4

La façon dont je vois est que vous avez 2 options

Modifier l'ancien DB sur l'ordinateur de chaque utilisateur par code pour inclure les nouvelles colonnes etc

Copiez le nouveau DB vers le bas lors de l'installation sous un autre nom puis en utilisant à nouveau le code sur les données de l'ancien avant de le supprimer et de renommer votre nouveau à ce qu'il devrait être appelé

Voici un lien pour vous aider si vous optez pour l'option 1

http://allenbrowne.com/func-DAO.html

+0

+ 1 Allez avec l'itinéraire de code pour modifier les tables. – JeffO

+0

Je voudrais aller avec l'autre suggestion car elle nécessite beaucoup moins de code et un peu simple SQL. Jet/ACE DDL n'est pas terminé et vous devez donc utiliser DAO pour vous assurer que toutes les propriétés sont correctement définies. Mais l'importation de leurs données dans un modèle de shell vide évite tout cela, et avec juste quelques instructions SQL. –