Comment : gérer des fichiers de données locaux dans votre projet
Un fichier de base de données local peut être inclus en tant que fichier dans un projet. La première fois que vous connectez votre application à un fichier de base de données local, vous pouvez choisir entre créer une copie de la base de données dans votre projet ou vous connecter au fichier de base de données existant à son emplacement actuel. Si vous choisissez de vous connecter au fichier existant, une connexion est créée, exactement comme dans le cas d'une base de données distante. Le fichier de base de données reste à son emplacement d'origine. Si vous choisissez de copier la base de données dans votre projet, Visual Studio crée une copie du fichier de base de données, l'ajoute à votre projet et modifie la connexion afin qu'elle pointe vers la base de données de votre projet plutôt que vers l'emplacement d'origine du fichier de base de données.
Notes
Les connexions de données existantes présentes dans l'Explorateur de serveurs/bases de données sont modifiées pour pointer également vers le fichier de base de données du projet (le fichier de base de données qui se trouve dans le dossier racine du projet).
Lorsque vous générez un projet, le fichier de base de données peut être copié du dossier racine du projet vers le dossier de sortie (bin). (Sélectionnez Afficher tous les fichiers dans l'Explorateur de solutions pour afficher le dossier bin.) Ce comportement tient à la propriété Copier dans le répertoire de sortie du fichier. Le paramètre par défaut de la propriété Copier dans le répertoire de sortie dépend du type de fichier de base de données utilisé.
Notes
Le comportement de la propriété Copier dans le répertoire de sortie ne s'applique pas aux projets Web ou C++.
Le fichier de base de données présent dans votre dossier projet racine est modifié uniquement lorsque vous modifiez le schéma ou les données de la base de données à l'aide de l'Explorateur de serveurs/Explorateur de bases de données ou d'autres Visual Database Tools.
Le comportement du fichier de base de données dépend du paramètre de la propriété Copier dans le répertoire de sortie qui est détaillée dans le tableau ci-après.
Au cours du développement d'applications, toute modification apportée aux données (au moment de l'exécution au sein de votre application) est répercutée dans la base de données, dans le dossier bin. Par exemple, lorsque vous appuyez sur F5 pour déboguer votre application, vous êtes connecté à la base de données qui se trouve dans le dossier bin.
Paramètre Copier dans le répertoire de sortie |
Comportement |
---|---|
Copier si plus récent (valeur par défaut pour les fichiers .sdf) |
Le fichier de base de données est copié du répertoire du projet dans le répertoire bin lors de la première génération du projet. Par la suite, à chaque fois que vous générez le projet, la propriété Date de modification des fichiers fait l'objet d'une comparaison. Si le fichier présent dans le dossier du projet est plus récent, il est copié dans le dossier bin, remplaçant ainsi le fichier qui s'y trouve. Si le fichier présent dans le dossier bin est plus récent, aucun fichier n'est copié. Ce paramètre conserve toutes les modifications apportées aux données au moment de l'exécution. En d'autres termes, à chaque fois que vous exécutez votre application et enregistrez les modifications apportées aux données, ces modifications sont visibles lors de l'exécution suivante de l'application.
Attention
Cette option n'est pas recommandée pour les fichiers .mdb ou .mdf.Le fichier de base de données peut changer même si aucune modification n'est apportée aux données.La simple ouverture d'une connexion (par exemple, le développement du nœud Tables dans l'Explorateur de serveurs) sur un fichier de données peut marquer celui-ci comme étant plus récent.Du fait de ce comportement imprévisible, il est déconseillé d'utiliser cette option pour les fichiers .mdb ou .mdf.
|
Toujours copier (valeur par défaut pour les fichiers .mdf et .mdb) |
Le fichier de base de données est copié du répertoire de projet vers le répertoire bin à chaque fois que vous générez votre application. À chaque fois que vous générez votre application et enregistrez des modifications apportées aux données, ces modifications sont remplacées lorsque le fichier d'origine est copié dans le répertoire bin, remplaçant ainsi la copie que vous venez de modifier. Les données mises à jour ne s'affichent pas lors de l'exécution suivante de votre application. Toute modification apportée au fichier de données dans le dossier de sortie est remplacée lors de la prochaine exécution de l'application. |
Ne pas copier |
Le fichier n'est jamais copié ni remplacé par le système de projet. Sachant que votre application crée une chaîne de connexion dynamique qui pointe vers le fichier de base de données installé dans le répertoire de sortie, ce paramètre fonctionne uniquement pour les fichiers de base de données locaux lorsque vous copiez manuellement le fichier. Vous devez copier manuellement le fichier dans le répertoire de sortie une fois la valeur Ne pas copier affectée au paramètre. |
Procédure
Pour répondre à la boîte de dialogue Fichier de base de données local
Cliquez sur Oui si vous souhaitez que Visual Studio copie le fichier de base de données dans votre projet et modifie la connexion de sorte qu'elle pointe sur cette copie. Pour plus d'informations sur l'exploitation des fichiers de base de données dans votre projet, consultez Vue d'ensemble des données locales.
Cliquez sur Non si vous ne souhaitez pas que Visual Studio copie le fichier de base de données dans votre projet. Dans ce cas, la connexion pointe vers le fichier à l'emplacement d'origine et le fichier de base de données n'est pas ajouté au projet en tant que fichier.
Voir aussi
Tâches
Procédure pas à pas : connexion à des données dans une base de données Access (Windows Forms)
Procédure pas à pas : création d'une base de données SQL Server Compact 3.5