c# see Options de base de données mono-utilisateur




param c# documentation (9)

Microsoft JET Blue.

Je vais écrire une application Windows en utilisant le framework .NET et C #. L'application devra stocker les données relationnelles qui seront interrogées, jointes et traitées.

Auparavant, j'ai fait cela en utilisant SQL Server, mais c'est une surcharge totale pour l'application que je suis en train de faire.

Quel est le moyen le plus simple et le plus simple de stocker des données relationnelles dans mon application? Si j'étais sur un Mac, j'utiliserais SQLite. Quel est l'équivalent .NET?


SQL Server Express est ce que vous voulez. Il est gratuit IIRC et évolue facilement en SQL Server complet lorsque cela est nécessaire.


Sql Server Compact Edition (fichiers * .sdf). Assez petit pour les smartphones mais aussi disponible sur la plate-forme complète. La version .net 2 s'appelait Sql Server Mobile.

Voici une comparaison entre Compact et Express.


Vous pouvez utiliser SQL Lite avec .NET. En fait, si vous êtes prêt à garder votre code pour qu'il se traduise en mono, ce qui inclut la plupart des versions 2.0 (3.5 à venir), vous pouvez aussi exécuter votre code sur Mac, si vous vous en tenez à SQL Lite:

http://mono-project.com/Main_Page

Cela dépend vraiment de combien de bang vous avez besoin. SQL Express, qui a été mentionné à plusieurs reprises dans ce fil de discussion, est SQL Server. Il a quelques restrictions sur SQL Server complet, mais c'est le moteur SQL Server complet, donc ce n'est pas une version allégée, sauf si vous pensez que restreindre une base de données à 4 Go le rend léger. Si vous avez besoin de services plus lourds comme des rapports, des files d'attente de messages (courtier de services), alors SQL Express 2008 est votre créature.

Pour plus léger dans le monde MS, vous pouvez aller avec SQL Compact. Comme avec SQL Lite, sa portée est limitée, mais vous avez indiqué que vous avez besoin d'une base de données légère.

Si vous êtes vraiment familier avec SQL Lite, je ne vois aucune raison de ne pas aller dans cette direction. Ajoutez une usine au-dessus de l'accès à votre base de données, juste au cas où vous changeriez d'avis. Ensuite, vous n'aurez plus à déchirer votre application entière pour changer de base de données.


Je dirais Microsoft Access. Vous avez besoin d'une licence si ...


Si vous utilisez VS 2008 et .NET 3.5, vous pouvez utiliser SQL Server Compact Edition . Ce n'est pas vraiment un serveur du tout, il fonctionne en-proc avec votre application et fournit une base de données SQL de base. Les bases de données elles-mêmes sont un fichier .sdf unique et sont déployés avec votre application. Comme cela fait partie du cadre, cela signifie également qu'il n'y a pas d'installation supplémentaire. En fait, cela ne fait pas partie du cadre, mais il est facilement redistribuable. J'utilise SQL Server CE pour un projet personnel sur lequel je travaille actuellement, et c'est très bien passé jusqu'à présent.


Si ce n'est pas sqlserver express, vous pouvez vouloir Microsoft SQL Server Desktop Engine (version réduite de sqlserver) qui est libre dans la plupart des cas. ou MySQL qui est également gratuit. Je préfère mysql.


SQLite

Oiseau de feu

MySQL intégré


Je ne l'ai pas encore utilisé, mais si je faisais une application Windows et que j'avais besoin de fonctionnalités similaires, j'utiliserais la base de données intégrée de Windows qui est déjà sur chaque boîte de fenêtres.

http://www.codeplex.com/ManagedEsent





data-structures