He creado un LocalDB con el que puedo trabajar en MS sqlserver management studio 2014, linqpad y visual studio 2013.
Aquí está la parte del cuadro de diálogo "propiedad de conexión" en SSMS que muestra el nombre del servidor:
Me gustaría poder conectarme a esta base de datos desde Excel. El problema es que el "Asistente de conexión de datos" en Excel no puede conectarse.
Aquí, he escrito el mismo nombre de servidor que se le dio a las "propiedades de conexión" en SSMS ...
Y aquí está el error que recibo ...
Preguntas:
¿Excel puede conectarse a un localDB? Sé que PUEDE conectarse a las bases de datos del servidor sql. ¿Hay alguna limitación acerca de LocalDB que evite esto? Pensé que el objetivo de LocalDB era permitir el desarrollo sin el esfuerzo de configurar una base de datos independiente.
¿Hay alguna forma alternativa de conectarse? ¿O el nombre de mi servidor requiere alguna modificación molesta?
.\mssqllocaldb
, olocalhost\mssqllocaldb
, o<comptuersIPAddress>\mssqllocaldb
. ¿Qué nombre de servidor usó para sus (exitosas) conexiones VS y Linqpad?Respuestas:
¡Qué PITA gratuita!
Pude hacerlo funcionar utilizando el "Asistente de conexión de datos" siguiendo estos pasos ...
No es difícil hacer esto, pero no parece haber ningún flujo lógico, hay que tambalearse hasta que algo haga clic.
fuente
SQLNCLI12
, y en sus capturas de pantalla seleccionó 'Native Client 11', que esSQLNCLI11
, y por alguna razón , no tiene el 'Native Client 12' que Excel busca para 2014.Esta es la cadena de conexión (SQLServer 2012 / Excel 2013):
Server=(LocalDB)\MSSQLLocalDB; Integrated Security=true ;AttachDbFileName={mdf file full path}
En mi PC, tuve que usarlo
;Trusted_Connection=Yes
, puede que no tenga ningún sentido, ya que tanto mi computadora portátil como mi PC están ejecutando las mismas versiones EXACTAS de SQLServer y Excel.Editar
No puedo reproducir el error (incluso instalé SQL Server 2014 en una VM y todavía funciona). La única opción que puede agregar y que puede ayudarlo es
Provider=SQLNCLI11;
OProvider=SQLNCLI12;
puede averiguar qué versión está instalada ejecutandosqllocaldb v
en la línea de comandos.Eso produciría algo como:
Microsoft SQL Server 2014 (12.0.2000.8)
fuente