it-swarm.com.de

Hinzufügen von LocalDB zu Visual Studio 2015 Community SQL Server-Objekt-Explorer

Problem

Ich verstehe nicht, wie LocalDB im SQL Server Object Explorer angezeigt wird. Bei einigen VMs wird es automatisch angezeigt, bei anderen VMs nicht. Nach stundenlangem Googeln verstehe ich es nicht.

Momentane Situation

  1. Ich habe eine saubere VM
  2. Ich habe Visual Studio 2015 Community installiert (alle Standardeinstellungen)
  3. Ich lasse eine Konsolenanwendung (Entity Framework 6, Code-First, Konsolenanwendung) laufen, die auf einem anderen VM funktionierte und automatisch eine Datenbank erstellte, die dann im SQL Server Object Explorer angezeigt wurde. aber nicht dieses Mal

Der Fehler sagt:

System.Data.SqlClient.SqlException (0x80131904): A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 52 - Unable to locate a Local Database Runtime installation. Verify that SQL Server Express is properly installed and that the Local Database Runtime feature is enabled.) ---> System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified

Auf dieser VM wird also keine Datenbank erstellt und im SQL Server-Knoten des SQL Server-Objekt-Explorers wird nichts angezeigt.

 Connecting to LocalDB

Was ich zu wissen denke

  • Die Visual Studio 2015-Community wird mit LocalDB geliefert. Also sollte alles einfach funktionieren, aber das ist nicht der Fall, und ich weiß nicht warum
  • LocalDB-Datenbanken sind nur ein Paar von Dateien (* .mdf und * .ldf)
  • Ich habe gesehen, dass die Dateien am Standard-Datenbankspeicherort unter C:\Users\<username>\AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances\MSSQLLocalDB erstellt wurden. Auf dieser VM gibt es jedoch keinen solchen Ordner
  • Der App.config sah jedes Mal so aus (und wurde automatisch erstellt, als ich Entity Framework 6, den NuGet Package Manager in Visual Studio, installierte):

App.config

<configuration>
  <configSections>
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
      <parameters>
        <parameter value="mssqllocaldb" />
      </parameters>
    </defaultConnectionFactory>
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    </providers>
  </entityFramework>
</configuration>

Andere zufällige Kommentare

  • Früher war es bei SQL Server erforderlich, bestimmte Ports zu öffnen, aber LocalDB wird nach meinem Verständnis als separater Prozess ausgeführt, wenn er von Visual Studio gestartet wird.
  • Ich kann nicht die SQLException debuggen
  • Wird LocalDB nicht mit Visual Studio 2015 Community ausgeliefert und muss ich sie separat installieren?
53
Lernkurve

Das gleiche Problem hatte ich heute vor kurzem bei der Installation von VS2015 Community Edition Update 1. 

Ich habe das Problem behoben, indem Sie einfach das Installationsprogramm "SQL Server Data Tools" aus dem Installationsprogramm " VS2015 ..." hinzugefügt haben anstelle von "Default". Ich wollte sehen, welche Installationsoptionen verfügbar sind, aber nichts anderes auswählen, als bereits angekreuzt war. Meine Annahme war, dass das, was bereits angekreuzt war, im Wesentlichen die Standardinstallation war. Aber es ist nicht.

47
Gonzalo Lucero

So prüfen Sie, ob LocalDb installiert ist oder nicht:

  • Führen Sie SSMS (SQL Server Management Studio) aus.
  • Versuchen Sie, mithilfe der Windows-Authentifizierung eine Verbindung zu dieser Instanz (localdb)\V11.0 herzustellen.

Wenn ein Fehler auftritt, Cannot connect to (localdb)\V11.0., ändern Sie den Instanznamen in (localdb)\MSSQLLocalDB und versuchen Sie erneut, eine Verbindung herzustellen, wenn Sie immer noch denselben Fehler erhalten.

Führen Sie die folgenden Schritte aus, um LocalDb zu installieren:

  • Schließen Sie SSMS.
  • Schließen Sie VS (Visual Studio), wenn es ausgeführt wird.
  • Gehen Sie zu Start Menu und geben Sie die Suche sqlLocalDb ein.
  • Wählen Sie aus den angezeigten Ergebnissen sqlLocalDb.msi aus und klicken Sie darauf.
  • Das SQL-Setup beginnt mit der Installation von LocalDB 

führen Sie nach Abschluss der Installation erneut SSMS aus und versuchen Sie, eine Verbindung zu einer der Instanzen (localdb)\V11.0 oder (localdb)\MSSQLLocalDB herzustellen. Eine davon sollte funktionieren, je nachdem, welche Visual Studio-Version Sie verwenden.

Sie können auch überprüfen, ob localdb mit Visual Studio installiert ist, indem Sie einfach eine neue SQL-Datei erstellen und das Verbindungssymbol im oberen Header der Datei aufrufen, auf dem standardmäßig alle Server aufgeführt sind, zu denen Sie eine Verbindung herstellen können, einschließlich localdb (falls installiert).

Zusätzlich zu den oben genannten Methoden, um herauszufinden, ob localdb installiert ist, können Sie auch MS windows power Shell oder windows command processor CMD oder sogar NuGet package manager console auf Ihrem Server-Computer verwenden und diese Befehle sqllocaldb i und sqllocaldb v ausführen, die Ihnen den Standort von localdb und den MSSQL anzeigen Server-Version auf Ihrem Computer installiert und ausgeführt.

25
Ashraf Abusada

Wenn Sie nicht sicher sind, ob die lokale Datenbank installiert ist, oder nicht sicher ist, welchen Datenbanknamen Sie verwenden sollen, um eine Verbindung herzustellen, führen Sie den Befehl 'sqllocaldb info' aus. Dadurch werden die vorhandenen localdb-Datenbanken angezeigt.

Soweit ich weiß, sollte Local Db zusammen mit Visual Studio 2015 installiert werden. Wahrscheinlich ist es jedoch keine erforderliche Funktion. Wenn etwas schief geht oder aus irgendeinem Grund nicht installiert werden kann, wird die Installation von Visual Studio weiterhin fortgesetzt (beachten Sie, dass dies der Fall ist nur meine Vermutung). Um auf der sicheren Seite zu sein, verlassen Sie sich also nicht immer auf VS.

14
Evk
  1. Suche "sqlLocalDb" im Startmenü, 
  2. Klicken Sie auf den Befehl Ausführen. 
  3. Gehen Sie zurück zu den VS 2015-Tools/stellen Sie eine Verbindung zur Datenbank her, 
  4. mSSQL-Server auswählen, 
  5. geben Sie (localdb)\MSSQLLocalDB als Servernamen ein

Wählen Sie Ihre Datenbank aus und los geht's.

8
Janiya Hicks

Ich habe versucht, nur LocalDB zu installieren, was bei meiner VS 2015-Installation nicht möglich war. Folgen Sie der unten angegebenen URL und laden Sie das LocalDB (2012) -Installationsprogramm herunter, das nur 33 MB groß ist :) 

https://www.Microsoft.com/de-de/download/details.aspx?id=29062

Wenn Sie nach dem SQL Server Data Tool für die Integration von Visual Studio 2015 suchen, laden Sie es bitte herunter: 

https://msdn.Microsoft.com/en-us/mt186501

4
Biki
  1. Suchen Sie nach sqllocaldb oder localDB in Ihrem Windows-Startmenü und klicken Sie mit der rechten Maustaste auf die Position der geöffneten Datei
  2. Öffnen Sie die Eingabeaufforderung am Dateipfad, den Sie bei der Suche gefunden haben
  3. Geben Sie in Ihrer Eingabeaufforderung sqllocaldb start ein.

  4. Verwenden Sie <add name="defaultconnection" connectionString="Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=tododb;Integrated Security=True" providerName="System.Data.SqlClient" />

1
Karthikeyan VK
My App.config looks as below:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.Microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
      <parameters>
        <parameter value="v11.0" />
      </parameters>
    </defaultConnectionFactory>
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    </providers>
  </entityFramework>
</configuration>

Ich habe festgestellt, dass sich in dem Pfad, den Sie oben angegeben haben, localDB befindet und die Version v11.0 ..__ hat. Deshalb habe ich (LocalDB\V11.0) im Dialogfeld "Verbindung hinzufügen" eingegeben und es hat für mich funktioniert.

0
shilly