cannot sql-server connection-string

sql server - cannot - ¿Hay una diferencia entre(local), ''.'' y localhost?



sql server access local database (4)

Generalmente son sinónimos. Sin embargo, depende de la aplicación que está configurando. Siempre que la aplicación entienda lo que quiere decir, no debería provocar una pérdida de rendimiento. Al menos, no uno que tengas que eliminar de forma prematura, si entiendes.

He usado los tres al hacer conexiones programáticas locales a bases de datos. ¿Hay alguna diferencia real entre ellos?


Por lo que sé, el punto "." y "local" son términos de aplicación de Windows, no un término "estándar", localhost resuelve a 127.0.0.1 en el nivel TCP / IP, por lo que si desea asegurarse de que es "compatible" entre plataformas, debe usar localhost o 127.0. 0.1


El resultado final es el mismo. La diferencia es:

  • ''localhost'' se resuelve en el nivel TCP / IP y es equivalente a la dirección IP 127.0.0.1
  • Dependiendo de la aplicación "(local)" podría ser solo un alias para ''localhost''. En SQLServer, ''(local)'' y ''.'' significa que la conexión se realizará utilizando el protocolo llamado pipes (memoria compartida) dentro de la misma máquina (no es necesario pasar por la pila TCP / IP).

Esa es la teoría. En la práctica, no creo que haya una diferencia sustancial en el rendimiento o las características si usa cualquiera de ellos.


Las diferencias descritas por Sergio pueden tener efectos notables debido a las autorizaciones.

Es probable que el usuario de sql tenga acceso a la canalización con nombre, pero a menudo no puede acceder a localhost. Pronto lo notarás cuando este sea el caso :)