visual studio sources source datos data create c# database vb6 embedded-database

c# - studio - ¿Qué base de datos local se ajusta a mi situación?



localdb visual studio 2017 (11)

¿Has pensado en FireBird SQL ?

Construiré un conjunto de aplicaciones. Una de estas aplicaciones es la aplicación desatendida (escrita en VB6) que escribirá los datos que recibe de varias fuentes en una base de datos local. Todas las demás aplicaciones (se escribirán en VS 2008 / c # 3.0) leerán estos datos principalmente por razones de informes.

No quiero SQL Server / MySql / Sybase o incluso sus ediciones express, porque su distribución es un problema (por ejemplo, requiere una instalación por separado, etc.). Estoy buscando una base de datos local que tenga controladores tanto para VB6 (así que probablemente OLEDB u ODBC si tengo que conformarme con esto) y ADO.NET. También sería bueno, si la base de datos tiene soporte para ORM, como NHibernate o al menos mapeadores de 1 a 1, como Subsonic, pero eso no es un factor decisivo. Pero mi principal requisito es que la base de datos sea macizamente sólida, para que no tenga que perder el tiempo jugando con ella, recuperando datos perdidos, etc.

Tengo experiencia con MS Access desde la última parte del día y no tengo demasiados buenos recuerdos (tampoco estuvo mal). He oído hablar de SQLite, SQL Server Compact Edition, VistaDB, etc ... pero no tengo experiencia con ellos y no conozco a nadie que lo haya usado realmente.

¿Qué hay afuera que mejor se adapte a mi situación?


Consulte Advantage Database Server. Tiene una opción de instalación silenciosa, tiene una huella muy pequeña y es fácil de mantener. Tiene una gran cantidad de clientes: ODBC, OLE DB, proveedor de datos .net, jdbc, dbi, php, etc. Motor local sin regalías (solo un dll que se ejecuta en proceso con su aplicación), cliente / servidor de bajo costo, SQL y acceso directo a la tabla de navegación.

The DevZone


Es posible usar SQL Server como una base de datos local que se conecta directamente a un archivo de base de datos. Pero esto requiere que tenga sql server express instalado.

Mire la configuración predeterminada de ASP.Net con un proveedor de membresía. Creará una base de datos local basada en archivos para el sitio web.

Usando este enfoque, puede estar bien, ya que puede usar todas sus herramientas familiares para desarrollar.

EDITAR:
Me acabo de dar cuenta de la etiqueta incrustada. Si desea ejecutar la aplicación en dispositivos con Windows CE, puede optar por SQL Server Compact . No es compatible con los procedimientos almacenados AFAIK pero admite la mayoría de las otras características de SQL Server.


He usado ScimoreDB, y escribí mi appender para log4net, para mi aplicación. Han tenido resultados mixtos y han pasado mucho tiempo tratando de revisar la documentación para que las cosas funcionen según las necesidades.

Me estoy moviendo hacia SqlLite y había un enlace flotando alrededor de usar SubSonic con SqlLite.


No tengo mucha experiencia con SQLite tampoco, pero lo he usado un poco. Se usa en MUCHAS situaciones y aplicaciones. Realmente hay cientos de pequeños DB por ahí, pero recomendaría SQLite como punto de partida, al menos.


SQLite como otros han mencionado con el proveedor SQLite.net ADO.net, para facilitar el acceso a .NET.


SQLite tiene un impacto muy bajo y está MUY bien escrito. Es perfecto para una base de datos de clientes locales


Yo recomendaría SQLite a menos que la base de datos. Tengo experiencia en usarlo y estaba en los mismos zapatos que tú. El proyecto System.Data.Sqlite es realmente agradable y es compatible con ADO.net 2.0 y toda esa fantasía. Actualmente están trabajando para obtener soporte completo de Linq en el contenedor también. Lo recomiendo por las siguientes razones.

  1. Bajo impacto: el motor tiene solo 700 KB o menos.
  2. Escalable: puede manejar bases de datos bastante grandes. Orden de GB. Cualquier cosa más grande que esto probablemente requerirá un motor de base de datos basado en servidor con MUCHA RAM.
  3. Durable: su suite de pruebas abarca la mayor parte del código y se ha demostrado que funciona en muchas aplicaciones comerciales, como el iPhone.
  4. Rápido - Hay muy poca sobrecarga con este motor.
  5. Actual: el proyecto .NET está muy actualizado con la última tecnología .NET 3.5 que microsoft está planteando.
  6. Portátil: puede usarlo en sistemas integrados o en el escritorio.

Consulte el proyecto System.Data.Sqlite aquí http://sqlite.phxsoftware.com/



Puedo responder por VistaDB. Otra base de datos que tal vez quiera consultar es Blackfish