2010-06-01 16 views
5

Estoy planeando escribir y comercializar una aplicación C# que almacenará datos en una base de datos subyacente Uso MySQL en mi entorno para mi propio desarrollo y esto es lo que tendría solía escribir la aplicación por mí mismo (no es necesario usar FK - el motor MyISAM estaría bien).Qué base de datos distribuir como parte de un backend de aplicación C#

Me preocupa lo fácil que será distribuir la aplicación junto con el motor de la base de datos. ¿El uso de MySQL me permitiría un fácil empaquetado de la aplicación para una instalación de "un clic" en el lado del cliente? (es decir, no quiero que tengan que instalar MySQL por sí mismos) y también ¿es factible desde el punto de vista de la licencia?

¿Existen otros sistemas de bases de datos que haría que el proceso sea más recta hacia adelante

+0

Gracias por las respuestas y los indicadores de SQLLite y SQL Server Compact (y otros). No estaba lo suficientemente claro en mi pregunta, pero la base de datos se usaría como un almacén de datos persistente privado y un motor en proceso suena definitivamente como lo que necesito. – jez

Respuesta

1

La clave aquí es qué tipo de base de datos necesita. ¿Esta base de datos se va a compartir entre varios usuarios de la aplicación? Si es así, MySQL estaría bien.

Pero parece más como si tuviera la intención de utilizar esta base de datos como un almacén de datos privado, donde cada instancia instalada de la aplicación tiene sus propios datos locales a esa máquina o perfil. En ese caso, desea un motor en proceso como Sql Server Compact Edition, Sqlite o incluso Access en lugar de un motor de clase servidor como MySql o Sql Server Express Edition.

4

Sqlite es muy simple. Usted acaba de implementar la DLL con su aplicación. No puedo decir qué tan apropiado es para su situación, dada la falta de información.

+0

+1 ¡No tengo otra opción que estar de acuerdo! = P ¡Estaba escribiendo lo mismo aproximadamente al mismo tiempo! –

2

Creo que SQLite podría hacer el truco, ya que es una base de datos basada en el sistema de archivos, por lo que no es necesario realizar ninguna instalación.

Access también podría hacer el truco, y la mayoría de las empresas ya lo han instalado como parte de Microsoft Office, aunque no necesitaría instalarlo para usar los ensamblajes Odbc o OleDb que son parte del GAC .

7

Tome un vistazo a SQL Server Compact 3.5

+1

Probablemente la mejor opción, ya que tiene cero huella externa a la aplicación, y se integrará fácilmente con cualquier versión reciente de Visual Studio. –

0

SQL Server 2008 Express está disponible para la redistribución de los ISV. También puede implementar esto utilizando el instalador de plataforma web de Microsoft.

0

SQL Server Express es otra opción. Tiene una excelente integración con .NET, es gratis de instalar y admite hasta 10GB por base de datos (o más si usa la característica Filestream).

+1

Express Edition probablemente no sea la mejor opción aquí. O bien debería elegir un motor en proceso o si es uno de esos raros casos en los que necesita un motor de clase servidor para una aplicación de escritorio, haría mejor en seguir con lo que sabe (MySql). –

1

Creo que un DBMS integrado es la mejor manera para ti. Por ejemplo, puede usar Firebird

incrustado
Cuestiones relacionadas