lunes, 30 de enero de 2012

¿Qué es LocalDB?

Aplica a: SQL Server 2012, SQL Server Denali.

¿Qué es LocalDB?

Es una nueva versión de SQL Server Express especialmente dirigida a los desarrolladores para evitarles una instalación completa de otras ediciones de SQL Server. De esta forma los desarrolladores se pueden enfocar en el desarrollo de aplicaciones sin hacer una gran inversión de tiempo instalando y configurando un servidor de base de datos.


Beneficios.

bullet Tiene un instalador de tamaño reducido. La versión 32-bit tiene 28.2 MB y la de 64-bit tiene 33.7 .
bullet Simplificado. No requiere configuración o administración.
bullet Ejecuta como un usuario con pocos privilegios a nivel de sistema operativo.
bullet Se instala de una forma sencilla.
bullet Ofrece el mismo lenguaje T-SQL que tiene SQL Server Express. Soporta procedimientos almacenados (stored procedures), triggers, vistas (views), y los tipos de datos geometry y geography.
bullet LocalDB usa el mismo sqlservr.exe que usan otras ediciones de SQL Server y los mismos proveedores (providers) a nivel de cliente.
bullet LocalDB no crea ningún servicio de base de datos, y el servicio se inicia y se detiene automática.
bullet Las conexiones de LocalDB soportan la propiedad AttachDbFileName, que permite a los desarrolladores especificar la localización de una base de datos.
bullet Los "service packs" de LocalDB pueden ser usados para actualizar una instalación de LocalDB o para realizar una nueva instalación de LocalDB.
bullet Una sola instalación de LocalDB para todos los usuarios que usan un computador.
bullet Permite instalación silenciosa vía línea de comando.
bullet Le resulta familiar a desarrolladores que hace uso de SQL Server Compact.
bullet Funciona con ASP .NET
bullet Soporta XML (XQuery, XPath) y BLOBs.
bullet Soporta ADO .NET Sync Framework
bullet Soporta LINQ.
bullet Soporta transacciones distribuidas.
bullet Permite ilimitadas conexiones locales.


Requerimientos.

bullet Requiere SQL Server 2012 Native Client, el cual no está incluido en el instalador de LocalDB.
bullet Requiere derechos administrativos para instalarse, debido a que se instala para todos los usuarios de un computador.
bullet Requiere 140 MBs de espacio de disco.
bullet Requiere que .NET Framework 4 sea llevado a la versión 4.0.2.


Limitaciones.

bullet No soporta Windows XP, Windows Server 2003, Window 2000.
bullet No soporta WOW. LocalDB no soporta una instalación de 32 bits en un Windows de 64 bits.
bullet Sólo permite conexiones locales. Sólo permite conexiones Named Pipes.
bullet Sólo SQL Server 2012 Mangement Studio (en un computador actualizado con .NET Framework 4.0.2) puede usarse para administrar LocalDB. Versiones anteriores de SQL Server Management Studio no pueden ser usadas.
bullet Visual Studio 2010 RTM no soporta LocalDB. Permite conectarse a LocalDB, pero en los diseños que involucran a base de datos se presentan errores. Se espera una actualización de Visual Studio que elimine esta limitación.
bullet No funciona en equipos móviles, a diferencia de SQL Compact.
bullet Tamaño límite de una base de datos: 10 GB.
bullet No soporta  FileStream. FileStream no es soportado en instancias de usuario.
bullet Limitado a hacer uso de un CPU.


¿Cómo instalarlo?

Primero, obténgalo aquí.

Como notará debajo, LocalDB sólo requiere aceptar el acuerdo de licenciamiento para instalarse.

Para una instalación silenciosa haga uso del siguiente comando:
msiexec /i SqlLocalDB.msi /qn IACCEPTSQLLOCALDBLICENSETERMS=YES

Usando la interfaz gráfica, se instala como sigue:
























Cómo conectarse a LocalDB usando SQL Server Management Studio (SSMS).


Usted se puede conectar a LocalDB usando SQL Server 2012 Management Studio si el .NET Framework 4 ha sido actualizado a 4.0.2 o posterior.

Use "(localdb)\v11.0" como nombre de servidor.





Versiones anteriores de SQL Server Management Studio no pueden conectarse a LocalDB, debido a que no usan .NET Framework 4.0.



Cómo crear una nueva base de datos usando SQL Server 2012 Management Studio.

Se crea una base de datos de la misma forma en que se crea en otras versiones de SQL Server: haga un clic derecho en "Databases" y selecciones "New database". Sin embargo, no deje de proveer una ruta (path) para alojar la base de datos en disco, o recibirá un error.






10 comentarios:

  1. Hola:

    Muy interesante la lectura, pero me surge una duda: ¿Si instalo localDB podría instalar después un SQL Server Express en la misma máquina?¿O una versión completa?

    Gracias.

    Jaime
    http://aprendiendosqlserver.blogspot.com.es/

    ResponderEliminar
    Respuestas
    1. puedes instalar el sql server express (sqlsex).

      Es el mismo sqlsex, cuando pones server=(localdb)\v11.0 le estas diciendo que corra el ejecutable de sqlsex y abre un hilo (un proceso, aunque no este configurado una instancia) si instala el sqlsex corre el mismo ejecutable solo que configura una instancia (un objecto que perdura) y a esa te conectas. No se si eso responde tu pregunta.

      Eliminar
  2. hola, tengo un fichero localDB y quiero incorporarlo como base de datos a un sqlserver 2008, como hacía antes con los mdf de sqlServerExpress, me informa que no es compatible, que puedo hacer?

    ResponderEliminar
  3. LocalDB es SQL Server 2012 y downgrade a 2008 no es aceptado. Pudieras usar Import/Export Wizard.

    ResponderEliminar
  4. Alberto, consulta... se puede hacer polling?

    ResponderEliminar
  5. hola amigo una pregunta una pregunta, ya logre hacer la conexion local y ya tengo mi aplicacion lista para publicar con el instalados pero tengo una duda, al trabajar el localdb con sql server, a la hora de instalar mi aplicacion en otro pc va a necesitar algun otro requisito para que corra bien y accede a las bases de datos locales que ya conecte mediante ese localdb?? Si podes responderme por aca o a mi correo pablow75@hotmail.com Muchas Gracias

    ResponderEliminar
  6. Tengo una aplicación desarrollada en Visual Studio 2008 que utiliza una base de datos SQL Server 2005 Express, ahora mi cliente compró una nueva máquina con Windows 8.1 el cual no acepta esa versión de SQL Server ¿Es LocalDB (SQLS2012) una solución, es decir puedo actualizar mi aplicación para que ahora utilice LocalDB desde VISUAL STUDIO 2008?
    Gracias por la atención.

    ResponderEliminar
  7. Saludo cordial, Visual Studio 2008 era para desarrollos en Net Framework 3.5
    Debes pasarte a Visual Studio Community 2015.

    ResponderEliminar
  8. Estado del arte actual? Sql Server Express 2016 LocalDB ?

    ResponderEliminar