Zur Hauptseite ... Zum Onlinearchiv ... Zum Abonnement ... Zum Newsletter ... Zu den Tools ... Zum Impressum ... Zum Login ...

Gedrucktes Heft

Diesen Beitrag finden Sie in Ausgabe 2/2006.

Unser Angebot für Sie!

Lesen Sie diesen Beitrag und 500 andere sofort im Onlinearchiv, und erhalten Sie alle zwei Monate brandheißes Access-Know-how auf 72 gedruckten Seiten! Plus attraktive Präsente, zum Beispiel das bald erscheinende Buch 'Access 2010 - Das Grundlagenbuch für Entwickler'!

Diesen Beitrag twittern

Zusammenfassung

Erfahren Sie, wie Sie den SQL Server 2005 Express Edition mit Access einsetzen, und lernen Sie die Vor- und Nachteile kennen.

Techniken

SQL Server, Access-Projekte, Access-Datenbanken, ODBC

Voraussetzungen

Access 2000 und höher, SQL Server 2005 Express Edition

Access und die SQL Server 2005
Express Edition

Dirk Bauer, Düsseldorf

Falls Sie schon einmal ein Access-Projekt (ADP) mit Access und der kostenlosen Datenbank Microsoft SQL Desktop Engine (MSDE) erstellt haben, werden Sie sich wahrscheinlich fragen, aus welchem Grund Sie nun auf die jüngste Version der Profidatenbank wechseln sollen. Dieser Artikel führt Sie in die Vorteile der 2005er Version ein und begleitet Sie bei den ersten Schritten mit diesem System.

Warum umsteigen?

Microsoft hat den Anwendern und Softwareentwicklern mit der kostenlosen MSDE in den letzten Jahren eine mächtige und leistungsfähige Datenbanklösung an die Hand gegeben. Mit Hilfe der Access-Projekte konnte man schnell eine Oberfläche für eine beliebige Datenbankanwendung mit MS Access erstellen und die Datenhaltung in die leistungsfähigere MSDE verlagern. Da die MSDE zu ihren Vollversionen SQL Server 2000 Standard und Enterprise Edition aufwärts kompatibel ist, steht einem späteren Upgrade auf ein "ausgewachsenes" System nichts im Wege.

Doch wo Licht ist, ist auch Schatten: Microsoft hat der MSDE einige künstliche Restriktionen verpasst, die einen Einsatz in der Praxis nicht immer sinnvoll erscheinen lassen. So können nur maximal fünf Clients gleichzeitig auf die MSDE zugreifen. Bei mehr gleichzeitigen Zugriffen drosselt die MSDE die Performance und die Antwortzeiten der Datenbank verlängern sich für alle Anwender.

Für die Administration und Pflege der MSDE stehen lediglich Kommandozeilentools zur Verfügung. Damit ist die Administration einer Datenbank durch einen Gelegenheitsanwender nahezu unmöglich. Ein weiterer gravierender Nachteil ist, dass sich viele Anwender nicht über die möglicherweise vorhandenen Sicherheitslücken im Klaren sind - in dieser Beziehung ist die MSDE ihren großen Geschwistern nämlich durchaus ebenbürtig. So fällt die lokale Instanz der MSDE bei Sicherheitsupdates überproportional oft unter den Tisch. Das beste Beispiel dafür ist der im Januar 2003 erstmalig aufgetretene Wurm MS-SQL Slammer. Er infizierte innerhalb einer guten halben Stunde mindestens 75.000 Microsoft SQL Server und brachte mit einer wahren Flut von UDP-Paketen auf Port 1434 das Internet innerhalb von 30 Minuten nahezu zum Stillstand. Eine Vielzahl der infizierten Systeme war aufgrund einer ungesicherten und nicht aktuellen MSDE-Instanz betroffen.

Microsoft hat mit der SQL Server 2005 Express Edition unter anderem die folgenden Modifikationen eingeführt:

  • Verdoppelung der maximalen Datenbankgröße von 2 GB auf 4 GB
  • Aufhebung der künstlichen Beschränkung bei mehr als fünf gleichzeitigen Benutzern; damit ist die Express Edition diesbezüglich mit den Vollversionen kompatibel.
  • Automatische Überwachung und Optimierung der Leistung der Datenbank zur Laufzeit
  • Verbesserte Sicherheitsfunktionen (Überwachung, Authentifizierung, Autorisierung)
  • Integration in das Microsoft AutoUpdate-Verfahren. Dieses hält die Datenbank mit dem Betriebssystem immer auf dem aktuellen Patch-Stand - Probleme wie mit dem Wurm MS-SQL Slammer sollen so vermieden werden.
  • Integration von .NET in die Datenbank für benutzerdefinierte Funktionen und gespeicherte Prozeduren
  • Native Unterstützung von XML als echtem Datentyp
  • Microsoft hat bereits weitere interessante Ergänzungen für das im ersten Halbjahr 2006 geplante Servicepack 1 angekündigt.

    Voraussetzungen

    Bevor Sie die SQL Server 2005 Express Edition auf Ihrem PC installieren können, müssen einige Voraussetzungen erfüllt sein:

  • Die unterstützten Betriebssysteme sind Windows 2000 mit Service Pack 4, Windows Server 2003 mit Service Pack 1 und Windows XP mit Service Pack 2.
  • Computer mit Pentium III- oder kompatiblem Prozessor mit mindestens 600 MHz (empfohlen: mindestens 1 GHz)
  • Mindestens 192 MB RAM (empfohlen: mindestens 512 MB)
  • 525 MB verfügbarer Festplattenspeicher
  • Wenn Sie sich nun dazu entschieden haben, die Microsoft SQL Server 2005 Express Edition zu installieren, benötigen Sie die drei nachfolgend beschriebenen Komponenten. Die Links zu den Downloads finden Sie am Ende des Artikels.

    .NET Framework 2.0

    Falls es auf Ihrem PC noch nicht installiert ist, benötigen Sie zunächst die 22 MB des "Microsoft .NET Framework 2.0 Redistributable (x86)". Ein großer Teil der Microsoft SQL Server 2005 Express Edition wurde von Microsoft auf Basis des aktuellen .NET Frameworks erstellt.

    Microsoft SQL Server 2005 Express Edition

    Der knapp 58 MB große Download der SQL Server 2005 Express Edition enthält die zentralen Datenbank-Komponenten. Dabei handelt es sich um den gleichen Programmkern, der auch bei der Standard-Edition Verwendung findet.

    Microsoft SQL Server Management Studio Express

    Das Microsoft SQL Server Management Studio Express (SSMSE) stellt ein grafisches Werkzeug zur Verwaltung von Instanzen des SQL Servers 2005 Express Edition zur Verfügung. Weiterhin ist dieses Tool in der Lage, jede im Netzwerk verfügbare SQL Server 2005-Instanz zu verwalten. Ausgenommen von der Verwaltung sind die Zusatzfunktionen des SQL Servers wie die Analysis Services, die Integration Services, die SQL Server 2005 Mobile Edition, die Notification Services, die Reporting Services und der SQL Server Agent.

    Das SSMSE befindet sich zurzeit noch in der Testphase und wird von Microsoft öffentlich in einer Community Technology Preview (CTP)-Version angeboten. Diese Version besitzt zwar noch keinen offiziellen Support von Microsoft, ist aber schon so stabil und ausgereift, dass ein Einsatz in Produktivumgebungen möglich ist. Die zum Erstellungszeitpunkt dieses Artikels aktuelle Version ist die Version von November 2005.

    Installation

    Bei der Installation müssen Sie einige Besonderheiten beachten. Die folgende Anleitung enthält die notwendigen Informationen:

  • Installieren Sie das .NET Framework durch den Start der Datei dotnetfx.exe. Ein Installations-Assistent begleitet Sie durch die Installation.
  • Nach der erfolgreichen Installation des .NET Frameworks starten Sie nun die Datei SQLEXPR_GER.EXE, um den Datenbankkern zu installieren.
  • Das Installationsprogramm der Express Edition prüft nun, ob alle Voraussetzungen zur Installation der Datenbank erfüllt sind, und passt die Umgebung gegebenenfalls noch an.
  • Bestätigen Sie in den einzelnen Masken die Standardvorgaben und stellen Sie im Schritt Featureauswahl sicher, dass auch die Client-Komponenten komplett installiert werden. Diese Option ist standardmäßig nicht selektiert und enthält unter anderem den später notwendigen ODBC-Treiber.
  • Im Schritt Authentifizierungsmodus legen Sie fest, ob sich nur innerhalb eines Windows-Netzwerkes authentifizierte Benutzer mit der Datenbank verbinden dürfen oder alle Benutzer, die die Datenbank im Netzwerk erreichen können. Für den Anfang sollten Sie die Standardeinstellung "Windows" bestehen lassen, da dieser Modus sicherer als der gemischte Modus ist. Die reine Windows-Authentifikation kann jederzeit nachträglich in den gemischten Modus geändert werden. In den folgenden Schritten bestätigen Sie jeweils die vorgegebenen Einstellungen.
  • Als letzte Komponente wird nun das Management Studio installiert. Starten Sie dafür die zuvor heruntergeladene Datei SQLServer2005_SSMSEE.msi und belassen Sie alle Einstellungen auf den vorgegebenen Werten. (
  • Nach der Installation starten Sie Ihren Rechner zur abschließenden Konfiguration einmal neu.

    Ein erster Überblick

    Starten Sie das Management Studio mit dem Link Start/Alle Programme/Microsoft SQL Server 2005/ SQL Server Management Studio Express CTP. Nach dem Start begrüßt Sie der Anmeldedialog des SQL Servers 2005
    (s. Abb. 1).

    Abb. 1: Anmeldedialog des SQL Servers 2005

    Der Eintrag für den Servernamen beziehungsweise Instanznamen setzt sich aus dem Namen des PCs und der Erweiterung \SQLEXPRESS zusammen. Bei der hier ausgewählten Windows-Anmeldung (Windows Authentication) verbinden Sie sich ohne Angabe eines Benutzernamens oder Kennworts mit einem Klick auf die Schaltfläche Connect mit der Datenbank, da der SQL Server automatisch Ihre Windows-Anmeldedaten verwendet.

    Nach dem Start des Management Studios werden alle relevanten Informationen des Datenbanksystems in zwei Spalten dargestellt. Die linke Spalte zeigt in einer Baumstruktur die Verwaltungsobjekte der Datenbank, die rechte Spalte dient der Darstellung der Details des jeweiligen Verwaltungsobjektes (s. Abb. 2).

    Um nun eine neue Datenbank anzulegen, klicken Sie mit der rechten Maustaste auf den Knoten Databases. Im Kontextmenü wählen Sie den ersten Eintrag New Database... aus und der Dialog aus Abb. 3 erscheint.

    Abb. 2: Oberfläche des Management Studios

    Abb. 3: Anlegen einer neuen Datenbank

    Geben Sie als Namen für die Datenbank HaufeVerlag ein und lassen Sie den Besitzer der Datenbank auf der Einstellung <default>.

    Den Speicherort für die neue Datenbank können Sie im Abschnitt Database files modifizieren. Im Gegensatz zu Microsoft Access besteht beim SQL Server eine Datenbank aus der eigentlichen Datenbank-Datei sowie einer weiteren Log-Datei. Die Log-Datei speichert alle Aktionen, die in der Datenbank stattfinden, in einer Sequenz ab. Diese Sequenz kann vom System zu einem späteren Zeitpunkt wieder abgerufen werden (Rollback, Recovery) und stellt somit einen wesentlichen Sicherheitsvorteil in Bezug auf die Datenintegrität gegenüber Access dar.

    Die weiteren Felder belassen Sie in den Standardeinstellungen, da diese optimal für die meisten Fälle vorgegeben werden. Mit der Schaltfläche OK schließen Sie den Dialog. Nun wird die Datenbank physikalisch im Dateisystem erstellt und automatisch im Management Studio registriert. Wenn alles geklappt hat, sollten Sie unterhalb des Knotens Datenbank nun die soeben neu erstellte Datenbank HaufeVerlag finden.

    In Abb. 4 sehen Sie unterhalb der neu angelegten Datenbank sechs Objektgruppen. Diese Objektgruppen fassen die folgenden Funktionen zusammen:

  • Database Diagrams:: Stellt alle Diagramme der aktuellen Datenbank dar. Ein Diagramm muss explizit angelegt werden und ist mit dem Beziehungsfenster in Access vergleichbar.
  • Tables: Verwaltung aller System- und benutzerdefinierten Tabellen
  • Views:: Verwaltung aller Abfragen
  • Synonyms:: Definition von Aliasnamen für eine Vielzahl von Objekten. Bei den Synonymen handelt es sich um eine fortgeschrittene Technik, die im Umgang mit Access zunächst nicht weiter relevant ist.
  • Programmability:: Definition von gespeicherten Prozeduren, Funktionen, Triggern und weiteren fortgeschrittenen Funktionen.
  • Security:: Verwaltung von Benutzern, Rollen, Schemainformationen etc.
  • Abb. 4: Anlegen einer neuen Tabelle

    Anlegen einer Tabelle

    Um eine neue Tabelle anzulegen, klicken Sie mit der rechten Maustaste auf den Knoten Tables und wählen im Kontextmenü New Table... aus. Der Detailbereich in der rechten Spalte verändert sich nun und es wird die dreispaltige Ansicht der Abb. 5 dargestellt.

    Die linke Spalte stellt nach wie vor den Objekt Explorer dar.

    In der mittleren Spalte ist eine Karteikarte mit der Überschrift Table - dbo.Table_1 erschienen. Hier geben Sie gleich die Feldnamen und Datentypen der neuen Tabelle an. Unterhalb der Tabellendefinition ist ein Bereich, der die Eigenschaften der selektierten Tabellenspalte darstellt.

    Die rechte Spalte zeigt allgemeine Eigenschaften der Tabelle an. Erstellen Sie nun die neue Tabelle wie folgt:

  • Klicken Sie mit der Maus in die leere Zelle Column Name und geben Sie den Feldnamen PersonID ein. Als Datentyp wählen Sie in der nächsten Spalte int für einen Zahlenwert im Integer-Format aus.
  • Das soeben angelegte Feld PersonID soll der eindeutige Primärschlüssel der Tabelle werden. Aus diesem Grund klicken Sie in der Symbolleiste auf den Schlüssel mit dem Tool-Tip Set Primary Key. Vor dem Feldnamen sollte nun wie in Abb. 5 ein kleines Schlüsselsymbol erscheinen. Die Spalte Allow Nulls ist nun nicht mehr selektiert, da ein Primärschlüssel keinen NULL-Wert annehmen kann.
  • Um eine mit dem Access-AutoWert vergleichbare automatische Vergabe des Primärschlüssels zu erreichen, setzen Sie im Bereich Column Properties unter der Gruppe Identity Specification den Wert Yes für die Zeile (Is Identity). Die beiden nachfolgenden Zeilen Identity Increment und Identity Seed legen die Schrittweise und den Startwert für den Primärschlüssel fest. Abb. 6 zeigt die fertigen Einstellungen.
  • Legen Sie nun ein neues Feld Vorname mit dem Datentyp nvarchar an. Sie können die Auswahl des Datentyps beschleunigen, indem sie ihn nicht mit der Maus aus der Auswahlbox selektieren, sondern die Anfangsbuchstaben des gewünschten Typs eintippen. Die Auswahl springt dann direkt zu dem passenden Typ in der Liste. Der Typ nvarchar steht für ein Textfeld, welches Unicode-Zeichen aufnehmen kann und eine variable Speicherbelegung durchführt. In die Klammer hinter dem Datentyp geben Sie die gewünschte Länge als ganze Zahl ein. In diesem Beispiel verwenden Sie nvarchar(50).
  • Wiederholen Sie Schritt 4 zum Anlegen des Feldes Nachname.
  • Speichern Sie die Tabelle unter dem Namen tblPersonen ab. (
  • Abb. 5: Vergabe eines Autowertes

    Die neu angelegte Tabelle erscheint nun unterhalb des Objektknotens Tables mit der Bezeichnung dbo.tblPersonen. Das Präfix dbo stellt den Eigentümer der Tabelle dar und ist die Abkürzung für den Begriff Database owner.

    Hinweis

    Eine ausführliche Beschreibung der Datentypen sowie der zulässigen Wertebereiche können Sie der Hilfe SQL Server Books Online entnehmen. Einen Link zum Download finden Sie am Ende dieses Artikels. (

    :Die Verbindung zu Access

    Um nun von Access aus Zugriff auf die im SQL Server Express angelegte Tabelle zu erhalten, würden Sie normalerweise in Access ein Projekt aus bestehenden Daten anlegen. Leider müssen Sie bei diesem Ansatz aber feststellen, dass aktuelle Access-Versionen nur eingeschränkt mit dem wesentlich neueren SQL Server 2005 kommunizieren können. Sie erhalten dementsprechend zunächst zwei Warnmeldungen, können aber dann weiterarbeiten.

    Die Tabellen können zwar gelesen und in der Entwurfsansicht angezeigt werden, ein Ändern oder Hinzufügen von Daten und das Anpassen des Entwurfs sowie das Anlegen neuer Tabellen sind nicht möglich. Auch Sichten lassen sich nicht erzeugen, Formulare und Berichte können aber zumindest lesend auf die Daten zugreifen.

    Es ist noch nicht bekannt, ob und wie Microsoft bezüglich der Unterstützung von ADPs in aktuellen Access-Versionen noch nachbessert. (

    Anlegen einer ODBC-Verbindung:

    Alternativ zum Verbinden via ADP kann man auch per ODBC auf den SQL Server 2005 zugreifen. Für die nachfolgenden Schritte benötigen Sie lokale Administrationsrechte auf Ihrem PC. Über Start/Systemsteuerung/Verwaltung/Datenquellen (ODBC) erreichen Sie den ODBC-Datenquellen-Administrator. Klicken Sie auf der Seite Datei-DSN auf die Schaltfläche Hinzufügen. Im Dialog Neue Datenquelle erstellen scrollen Sie an das Ende der Liste. Die beiden letzten Einträge sollten wie in Abb. 7 der SQL Native Client und SQL Server sein.

    Abb. 6: Treiberauswahl für ODBC-Datenquelle

    Wählen Sie hier den SQL NativeClient, da sich hinter diesem Eintrag der passende Treiber für die SQL Server 2005 Express Edition verbirgt.

    Die Versionsnummern in der zweiten Spalte bringen hier mehr Klarheit, da der Eintrag SQL Server mit der Nummer 2000.xx beginnt und dementsprechend nur für die MSDE oder den SQL Server 2000 geeignet ist.

    Praxis-Tipp

    Falls Sie von einem anderen Rechner auf die SQL Server Express Instanz zugreifen möchten, ist der Eintrag SQL Native Client auf diesem Client nicht vorhanden. Starten Sie in diesem Fall das in Kapitel 4 beschriebene Setup und wählen Sie nur die Client-Komponenten aus. Das Setup installiert dann nur die Treiber zum Datenzugriff und nicht die komplette Datenbankinstanz. (

    Nach einem Klick auf die Schaltfläche Weiter geben Sie der Datenquelle den Namen HaufeTest. Unter diesem Namen wird in einem der folgenden Schritte auf die Datenbank zugegriffen. Ein Klick auf Weiter zeigt eine kurze Zusammenfassung, die Sie mit Fertig stellen abschießen. Nun wird der Treiber für den SQL Server 2005 geladen und Sie können im Feld Server aus der Liste einen Datenbankserver auswählen. Hier sollte der Name des PCs erscheinen, auf dem Sie zuvor die SQL Server Express Edition installiert haben. Falls sich in Ihrem Netzwerk weitere SQL Server befinden, werden diese nun ebenfalls in dieser Liste dargestellt (s. Abb. 7).

    Wählen Sie den korrekten Servernamen aus und ergänzen Sie den Servernamen nun manuell mit \SQLEXPRESS. Diese Ergänzung ist zwingend notwendig, da die SQL Server Express Edition vom Setup automatisch als Named Instance eingerichtet wird.

    Dabei ist es möglich, diverse Datenbankprozesse unter eigenständigen Namen auszuführen. Der Begriff SQLEXPRESS ist in diesem Fall der Name der Datenbankinstanz. Bestätigen Sie die Angaben mit Weiter.

    Im folgenden Dialog belassen Sie die Einstellung auf Windows NT-Authentifizierung und gehen auf Weiter. Nun markieren Sie die Checkbox Die Standarddatenbank ändern auf und wählen aus der Liste die zuvor erstellte Datenbank HaufeVerlag aus (s. Abb. 8).

    Abb. 7: Verbindungsinformation zum Server

    Abb. 8: Ändern der Standarddatenbank

    Abb. 9: Test erfolgreich abgeschlossen

    In der letzten Maske klicken Sie direkt auf Fertig stellen. Ihre Angaben werden noch einmal zusammengefasst und Sie haben die Möglichkeit, die Datenquelle zu testen. Sie sollten nach dem Test die Meldung aus Abb. 9 erhalten.

    Bestätigen Sie alle offenen Fenster und beenden Sie den ODBC-Datenquellen-Administrator.

    Einbinden der Tabellen in Access

    Starten Sie nun Access und legen Sie eine neue Datenbank mit dem Namen HaufeVerlag.mdb an. Wählen Sie im Menü Datei/Externe Daten/Tabellen verknüpfen aus.

    Im Verknüpfen-Dialog ändern Sie den Dateityp auf ODBC-Datenbanken(). In dem sich nun öffnenden Dialog Datenquelle auswählen sollten Sie die zuvor angelegte Dateidatenquelle HaufeTest.dsn sehen.

    Wählen Sie die Quelle aus und bestätigen Sie mit OK. Access analysiert nun die in der Datenquelle vorhandenen Objekte.

    Nach kurzer Zeit erscheint der Dialog Tabellen verknüpfen aus Abb. 10.

    Abb. 10: ODBC - Tabellen verknüpfen

    Neben einer Vielzahl von internen Tabellen des SQL Servers finden Sie an erster Stelle die von Ihnen angelegte Tabelle dbo.tblPersonen. Markieren Sie die Tabelle und bestätigen Sie mit OK.

    Die Tabelle wird nun in Access eingebunden und kann wie eine interne Access-Tabelle verwendet werden. Dabei wird der Tabellenname automatisch auf dbo_tblPersonen geändert, da Access generell keinen Punkt in Objektnamen zulässt.

    Öffnen Sie nun die Tabelle und erfassen Sie einige Daten. Beachten Sie dabei, dass Access die erste Spalte als AutoWert erkennt und die PersonID automatisch vergeben wird.

    Anders als bei einer internen Access-Tabelle erfolgt die Generierung des Wertes aber nun mit den zuvor für dieses Feld getätigten Einstellungen auf dem Server.

    Fazit

    Er gibt viele Gründe, die den Einsatz der neuen SQL Server 2005 Express Edition rechtfertigen. Auch wenn das Zusammenspiel der Datenbank mit Access zurzeit noch nicht so komfortabel wie beim Einsatz der MSDE 2000 gelöst ist, steht einem reibungslosen Einsatz nichts im Wege.

    Microsoft bietet sehr leistungsfähige Werkzeuge zur Administration und Pflege der Datenbanken an. Das einmal erarbeitete Know-how im Umgang mit der Express Edition kann eins zu eins bei den großen Versionen des SQL Servers wieder eingesetzt werden.

    Dieser Artikel konnte in vielen Bereichen nur an der Oberfläche der verfügbaren Funktionen bleiben. Bei Interesse könnte er der Auftakt zu einer Serie rund um die Express Edition mit Themen wie zum Beispiel Wartungsaufgaben, Sicherheit oder Datenzugriff mit VBA werden.

    Links

    Tab. 1 führt alle Suchbegriffe auf, mit denen Sie am schnellsten auf der Download-Seite von Microsoft unter der URL http://www.microsoft.
    com/downloads/results.aspx?&DisplayLang=de zu den relevanten Softwarepaketen finden.

    Bezeichnung

    Suchbegriff(e)

    Microsoft .NET Framework 2.0 Redistributable (x86)

    .NET Framework 2.0

    Microsoft SQL Server 2005 Express Edition

    SQL Server 2005 Express

    Microsoft SQL Server Management Studio Express

    Management Studio Express

    SQL Server 2005 Books Online

    SQL Server 2005 Books

    Tab. 1: Links zum Download der Softwarepakete

    Hinweis

    Um das Microsoft SQL Server Management Studio Express auf der Downloadseite zu finden, wählen Sie zuvor die Option "Auch Downloads für englischsprachige Versionen anzeigen" aus. (

    Kompletten Artikel lesen?

    Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

    E-Mail:

    © 2003-2015 André Minhorst Alle Rechte vorbehalten.