SQL Server 2012 LocalDB

Nach langer Zeit habe ich mich auch mal mit dem vom SQL Server 2012 verfügbaren Produkt „LocalDB“ beschäftigt.
Die Vorteile beim „unkomplizierten“ Testen der Datenbanken in einer Lokalen Instanz überwiegen einfach zu sehr als das man dieses Produkt Ignorieren sollte.
Und Darum geht es in diesem Blog-Eintrag hier auch: Lokales testen von SQl Datenbanken unter SQL LocalDB.

Um die Versions-Info herauszubekommen gibt man folgenden Befehl in die CMD ein:

1
2
C:\Users\sven>sqllocaldb info
v11.0

Eine neue Instanz erstellt man mit folgendem Befehl:

1
2
C:\Users\sven>sqllocaldb create LokalTest
Die LocalDB-Instanz 'LokalTest' wurde mit Version 11.0 erstellt.

Nach dem erstellen muss diese Instanz gestartet werden:

1
2
C:\Users\sven>sqllocaldb start LokalTest
Die LocalDB-Instanz 'LokalTest' wurde gestartet.

Mit dem folgenden Befehl bekommt man nähere Informationen zu der erstellten Instanz:

1
2
3
4
5
6
7
8
9
C:\Users\sven>sqllocaldb info LokalTest
Name:               LokalTest
Version:            11.0.2100.60
Starker Name:
Besitzer:              Sven Schmalle
Automatisch erstellen: Nein
Status: Wird ausgeführt
Letzte Startzeit: 28.12.2012 13:06:27
Pipename der Instanz: np:\\.\pipe\LOCALDB#AFF7C25D\tsql\query

Danach kann man sich mit dem SQL Server Management Studio auf “(localdb)\LokalTest“ mit den eigenen Windows Anmeldeinformationen verbinden.
Die Instanz-Dateien (Datenbanken udn Logs) liegen Default in: C:\Users\sven\AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances\LokalTest.

Wenn man nun versucht über das SQL Server Management Studio eine Datenbank anzulegen, bekommt man einen Fehler, das die MDF Datei falsch geschrieben wurde oder sowas.
Das liegt wohl damit zusammen das der Pfad für die Db den das SQL Server Management Studio und der Pfad den SQL localDB benutzen, sich voneinander unterscheiden.
Auf jedenfall kann man eine Datenbank neu anlegen indem man in einer neuen Abfrage der erstelleten instanz folgenden CREATE Befehl eingibt:

1
2
CREATE DATABASE [testDB]
GO

Damit wird die neue Datenbnak in der Instanz angelegt in der dieser Query ausgeführt wurde.

Nachdem eine Datenbnak erfolgreich angelegt wurde kann eine Tabelle ohne Probleme mit dem SQl Manegement Studio oder per Script erstellt werden:

1
2
3
4
5
6
7
8
9
10
USE [testDB]
GO
 
CREATE TABLE [dbo].[testTab](
	[id] [int] IDENTITY(1,1) NOT NULL,
	[name] [nchar](30) NULL,
	[email] [nchar](30) NULL,
	[geb] [date] NULL
) ON [PRIMARY]
GO

Nun kann man SQL LocalDB ganz nomarl benutzen wie man es von einem SQL Server gewohnt ist – nur das alles Lokal und ohne größere konfigurations-Orgien läuft. 🙂

leave your comment


*

Unterstütze den Frickelblog!