usuario tipo tengo studio standard sesion servidor saber que puede ningun motor management licenciado inicio esta error encontro ejecutar desde datos conectar como abrir c# .net sql-server ado.net connection-string

c# - tipo - no se puede conectar a local sql server 2008



Cómo obtener el nombre del servidor a través del código si SQL Server(Standard Edition) está instalado (3)

Cómo obtener el nombre del servidor a través del código si SQL Server (Standard Edition) está instalado.

Pasamos el nombre del servidor al crear una cadena de conexión para conectar SQL Server. ¿Podemos recuperar este valor a través del código?

string sqlConnectionString = string.Format( "user id={0};password={1};server={2};Trusted_Connection=no;database=TestDB; connection timeout={3}", dirDBinfo.UserName, dirDBinfo.Password, "ServerName", dirDBinfo.TimeOut);


¿Está el servidor en la computadora local?
Si es así, configure el nombre del servidor como localhost .
Si no, use SqlDataSourceEnumerator .

Además, en lugar de crear una cadena de conexión utilizando String.Format , debe usar un SqlConnectionStringBuilder . Esto manejará los valores con punto y coma.

Por ejemplo:

var builder = new SqlConnectionStringBuilder(); builder.UserID = dirDBinfo.UserName; builder.Password = dirDBinfo.Password; builder.Server= "localhost"; builder.UserID = dirDBinfo.UserName; builder["Trusted_Connection"] = "no"; builder.Database = "TestDB" builder.ConnectTimeout = dirDBinfo.TimeOut;


¿No puedes simplemente ejecutar SELECT @@ SERVERNAME contra esta conexión?


No estoy seguro de entender lo que quieres.

Si ya tiene una cadena de conexión y está tratando de extraer el nombre del servidor para su uso en otro lugar, puede realizar una ingeniería inversa de esta manera:

var parser = new SqlConnectionStringBuilder(connectionString); var serverName = parser.DataSource;

Si está construyendo su cadena de conexión por primera vez, entonces:

  1. Si sabe que desea conectarse al Servidor SQL en la máquina en la que se está ejecutando su código de cliente, simplemente use (local) el nombre del servidor. Si el SQL Server tiene un nombre de instancia, especifíquelo así: (local)/myinstancename .
  2. Si no sabe de antemano a qué servidor conectarse, entonces depende de usted obtener esa información de otro lado.