Visual Studio 2012 : intégrer SQLite
Visual Studio 2012 intègre divers connecteurs vers des bases de données, que ce soit pour Microsoft SQL Server, SQL Server Compact, les base de données de type Access… Mais aucun connecteur natif vers SQLite n’est fourni.
L’intérêt d’utiliser SQLite est de pouvoir par exemple utiliser un même format de base de données pour vos projets Windows, Windows Store, Windows Phone, Silverlight, Java, Android, Python, etc !
Comme SQLite n’est pas intégré à Visual Studio 2012 et donc n’apparait pas dans l’explorateur de serveur, nous allons voir comment facilement ajouter le connecteur à notre environnement de développement.
Téléchargement et installation
1) Télécharger SQLite sur le site officiel : http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki
Même si cela vous semble logique de choisir la version 64 bits pour une machine 64 bits, au 26/03/2013, le designer n’est pas intégré dans celle-ci, ainsi je vous conseille de télécharger la version 32 bits :
sqlite-netFx45-setup-bundle-x86-2012-1.0.84.0.exe (7.82 MiB) |
This setup package features the mixed-mode assembly and will install all the necessary runtime components and dependencies for the x86 version of the System.Data.SQLite 1.0.84.0 (3.7.15.2) package. The Visual C++ 2012 RTM runtime for x86 is included. The .NET Framework 4.5 is required. This setup package is capable of installing the design-time components for Visual Studio 2012. (sha1: 6954e6ee073a5965fbac99408e485bf68c1d35cf) |
2) Installer SQLite :
Sélectionner « Install the designer components for Visual Studio 2012 » pour que le designer SQLite soit disponible dans Visual Studio 2012 :
Utilisation dans Visual Studio
1) Ouvrir Visual Studio 2012, aller dans le menu « Affichage » et sélectionner « Explorateur de serveurs » :
2) Cliquer sur « Connexion à la base de données » puis cliquer sur « Modifier » pour changer le connecteur :
3) Choisir le connecteur System.Data.SQLite Database File dans les sources de données :
4) Choisir un fichier de base de données SQLite ou alors créer un nouveau fichier :
5) La base est ajoutée, il est possible maintenant de la manipuler :
6) Exemple de création de table :
Note : ne pas oublier de définir la clé primaire ainsi que l’auto-incrémentation si nécessaire.
Exemple d’intégration dans un projet C#
1) Faire un clic droit sur le projet concerné, « Ajouter » et « Nouvel élément » :
2) Sélectionner la catégorie « Données » puis le type de fichier : « ADO.NET Entity Data Model » :
3) Choisir « Generate from database » et « Suivant » :
4) Sélectionner la base de données voulue dans la liste déroulante :
5) Il est maintenant nécessaire de sélectionner les données que l’on souhaite lier :
6) Le fichier est généré, il est maintenant possible de manipuler les données de la base de données SQLite :
7) Exemple d’utilisation :
subdbEntities subDb = new subdbEntities();
bool haveSource = subDb.VideoSource.Count() > 0;
Merci, pour la première foi depuis des semaine j’ai réussi a connecter une base de donnée.
Me reste à l’intégrer dans mon programme Visual Basic 2012 pro.
signé : Un amateur (pauvre de moi) hihihi
Bon courage pour la suite ! 🙂
Bonjour,
J’ai le même pb que Boris. As-tu trouvé la solution ?
Pardon, mon précédent post etait pour répondre à Boris.
Merci pour cet Excelent Tuto en passant 😀
Avez vous bien lu qu’il fallait installer la version 32bit?
Sur le site de SQLite c’est d’ailleur écris en gras :
This is the only setup package that is capable of installing the design-time components for Visual Studio XXXX
où XXXX est l’édition de visual studio.
Donc bien lire ce qui est en gras pour choisir la bonne version.
Et s’assurer durant l’install qu’il propose bien d’installer le designer.
Permettez-moi de vous remercier au prime abord pour cet excellent tuto.
Malheureusement, de mon coté, je ne vois pas « le connecteur System.Data.SQLite Database File » dans les sources de données. J’ai pourtant bien installé je crois le SQLite sur le site officiel : http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki
Pouvez-vous m’aider svp?