Pregunta

Heredé una aplicación VB6/Access que hemos desarrollado y vendido durante muchos años.Vamos a SQL Server 2005 Express Edition y .Net.

La aplicación puede ser multiusuario.Actualmente, la configuración es sencilla para el cliente: navegue a la carpeta para crear la base de datos en el primer inicio;El segundo usuario busca el mismo archivo.

Si optamos por SQLExpress, creo que nuestra aplicación requerirá más participación para configurar SQLExpress en el servidor.Pero creo que obtendremos una mayor seguridad y (sin cambios de código) una versión SQL para clientes más grandes.

¿Cómo puedo crear la mejor experiencia para el cliente desde el punto de vista de la instalación y el soporte técnico?¿Qué problemas te han surgido?¿Qué procedimientos de instalación han funcionado?

¿Configura una instalación separada para el servidor/cliente o simplemente proporciona buenas instrucciones?¿Qué tipo de cosas se equivocan los clientes en el primer intento?

¿Fue útil?

Solución

Un proyecto de implementación de Visual Studio le permite instalar una instancia de SQL Server Express con facilidad.

Tenemos el mismo tipo de escenario para nuestras aplicaciones y eso significa que necesita instalaciones separadas para el cliente y el servidor.

La instalación de nuestro servidor consiste en instalar un nuevo servidor SQL o actualizar el esquema de una instalación existente si es necesario.La instalación del cliente simplemente empaqueta los archivos requeridos por el cliente.Debe considerar el escenario de actualizar el esquema de la base de datos y garantizar que los clientes tengan la versión actualizada del cliente que funcione con el nuevo esquema.Esto lo logramos de una manera sencilla:

Almacenar una identificación de versión en la base de datos, p.1.0.1 Actualización del ensamblaje.cs de la aplicación cliente y asegurando que la versión de ensamblaje coincida con la versión almacenada en la base de datos.Si no es así, solicita al usuario que instale la nueva versión.

Para obtener la mejor experiencia de usuario posible, le gustaría poder instalar una nueva versión del servidor y que todos los clientes se actualicen automáticamente.Tenemos un método para hacer esto y puedo brindarle más detalles si es necesario.

Otros consejos

Recomendaría seguir la ruta SQL Express e incluirlo en el paquete de instalación.El instalador tiene un montón de opciones de línea de comandos y puede usar scripts SQL para realizar cualquier configuración posterior a la instalación en la base de datos (es decir, habilitar/deshabilitar la integración CLR, OpenRowset y otras funciones).

Además, es mucho más estable que las instalaciones antiguas de MSDE 2000;Tuve pesadillas que respaldan eso.También descubrí que 99 de cada 100 veces, establecer los parámetros de instalación de base de datos predeterminados hace feliz a la gente.

Blog de SQL Express

Cómo instalar SQL 2008 desde el símbolo del sistema

¿Cuantos usuarios y cuantos datos?

No sé si existen pautas generales sobre cuántos usuarios es "demasiado" para SQL Express 2005, pero existe un límite de datos fijo de 4 GB.Supongo que no lograrías eso con la herencia de Access, pero sería bueno saberlo.

Puede automatizar la instalación de SQL Express.Lo vi hecho porque algo que instaló mi esposa lo hizo y ella es la última persona de la que sospecharía que lo instalaría.

También hay Edición compacta de SQL Server que creo que apunta a .NET 3.5 y a Windows Mobile.Creo que es más análogo a los bits de "base de datos de un solo archivo" como los que tienes con Access.

SQL Express será un gran paso adelante respecto a Access en cuanto a capacidad y confiabilidad.No debería necesitar más configuración, solo un enfoque diferente siempre que sepas lo que estás haciendo.

En mi empresa lo usamos mucho.Tuve algunos problemas con tiempos de inicio lentos en máquinas más lentas.

Nuestra experiencia de instalación no es perfecta: existe una utilidad que restaurará la base de datos que la aplicación utiliza como plantilla de base de datos.

Dado que todavía está considerando ir a SQLExpress, ¿su grupo ha considerado SQLite?Aún puede tener la funcionalidad de base de datos que necesita sin tener que instalar un motor en el sistema del cliente.

SQL Server 2005 Express Edition se instala fácilmente con cualquier instalador decente.¡Un par de horas de trabajo es todo lo que necesitarás!Si su corazón está puesto en ello, no permita que el miedo a la instalación lo detenga.

Otra opción:Creo que también puedes usar SQL Server Express en un "modo de archivo" donde simplemente apuntas al archivo MDF y no es necesario tener una instancia de SQL Server ejecutándose.Eso sería muy similar a cómo parece que su aplicación actual usa Access.No estoy seguro de cómo funciona esto en situaciones multiusuario, pero podría ser algo para investigar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top