MicrosoftSQL Server im LAN finden. Instanzname fehlt

Aus AE SYSTEME Support
Zur Navigation springen Zur Suche springen

MicrosoftSQL Server im LAN finden. Instanzname fehlt

Teile unserer Software bieten die Möglichkeit, verfügbare SQL Server automatisch zu suchen und anzuzeigen. Bei lokal installierten SQL Servern wird zwar der Rechnername aber keine Instanz angezeigt. Der automatische Login ist dann oftmals nicht möglich, obwohl Remote Verbindungen beim Server zugelassen sind.

200320bild1ohnesqlbrowser.jpg

Ursache: Der SQL Browserdienst ist nicht aktiviert.

Abhilfe: SQL Browserdienst aktivieren. Dann wird beim Lokalisieren der SQL Server auch für den lokalen Server eine Instanz angezeigt.

200320bild2sqlbrowserdienst.jpg

200320bild2mitsqlbrowser.jpg


Programmers Note

Nachfolgend, C# Code, um Liste verfügbarer SQL Server auszulesen:


       private DataTable mDTservers;
       private BindingSource mBSservers = new BindingSource();
       private void buttonX1_Click(object sender, EventArgs e)
       {
           //=======================================================
           // Button Show sql server
           // using dgv_server as datagridview in Form
           //=======================================================
           Cursor = Cursors.WaitCursor;
           DataTable servers = SqlDataSourceEnumerator.Instance.GetDataSources();
           //If you want to see SQL servers in simple listbox:
           //foreach (DataRow sv in servers.Rows)
           //{
           //    listBox1.Items.Add(sv[0].ToString());
           //}
           //If you want to see SQL servers in comfortable datagridview dgv_server
           mDTservers = servers;
           mBSservers.DataSource = mDTservers;
           dgv_server.Enabled = (mDTservers.Rows.Count > 0);
           dgv_server.DataSource = mBSservers;
           dgv_server.ReadOnly = true;
           Cursor = Cursors.Default;
       }