3. Anhänge
3.1. Erstellen eines Webprojekts mit Visual Studio.NET unter Windows XP Home Edition
Mit Visual Studio.NET können Sie verschiedene Arten von Projekten erstellen:

Um ein Webanwendungsprojekt zu erstellen, wählen Sie normalerweise den Typ [ASP.NET-Webanwendung]. Dieser Projekttyp erfordert einen lokalen oder Remote-IIS-Webserver. Wenn Sie auf einem Windows XP-Rechner arbeiten, ist dieser Server nicht vorhanden und kann nicht installiert werden. Daher können Sie kein [ASP.NET-Webanwendungsprojekt] erstellen.
Sie können dieses Problem umgehen, indem Sie einige kleinere Einschränkungen in Kauf nehmen. Ganz einfach:
- Verwenden Sie den Cassini-Webserver anstelle des IIS-Servers. Er ist kostenlos auf der Microsoft-Website verfügbar.
- ein [Class Library]-Projekt anstelle des [ASP.NET Web Application]-Projekts verwenden
Lassen Sie uns ein einfaches Projekt erstellen, um zu zeigen, wie das geht.
- Erstellen Sie ein [Class Library]-Projekt
![]() | ![]() |
- Löschen Sie [Class1.vb]

- Fügen Sie dem Projekt ein neues Element vom Typ [Textdatei] hinzu und nennen Sie es [demo.aspx]:
![]() | ![]() |
- Die Datei [demo.aspx] wird als Webseite erkannt, und ihr wird ein Seiteneditor zugeordnet. Dieser Editor verfügt über zwei Bereiche:
- [Design] zum grafischen Erstellen der Seite
- [HTML] für den Zugriff auf den HTML-Code der Seite

- Wählen Sie [Ansicht/Code], um den VB-Code-Bereich der Seite anzuzeigen. Es passiert nichts. Sie können nicht auf den VB-Code der Seite zugreifen.
- Wechseln Sie zum [HTML]-Bereich und geben Sie den Code ein, der die Seite [demo.aspx] mit dem Code [demo.aspx.vb] verknüpft:

- Fordern Sie über [Code anzeigen – F7] den mit der Seite verknüpften Steuerelementcode an. Sie sehen die Datei [demo.aspx.vb]:

- Die Seite [demo.aspx] wird nun als [.aspx]-Webseite mit einer zugehörigen [.aspx.vb]-Datei erkannt.
- Kehren Sie zum [Entwurf]-Bereich von [demo.aspx] zurück und entwerfen Sie die folgende Seite:

Die Seite enthält Text und eine Serverkomponente vom Typ [Label] mit der Kennung [lblHeure].
- Wechseln Sie zum [HTML]-Bereich. Dort finden Sie den folgenden Code:
<%@ Page codebehind="demo.aspx.vb" inherits="demo.demo" autoeventwireup="false" Language="vb" %>
Démo ASPX, il est
<asp:Label id="lblHeure" runat="server"></asp:Label>
Dieser Code ist aus Sicht der HTML-Syntax unvollständig. Vervollständigen wir ihn:
<%@ Page codebehind="demo.aspx.vb" inherits="demo.demo" autoeventwireup="false" Language="vb" %>
<html>
<head>
<title>démo ASPX</title></head>
<body>
Démo ASPX, il est
<asp:Label id="lblHeure" runat="server"></asp:Label>
</body>
</html>
- Öffnen wir die Datei [demo.aspx.vb], um den Steuerungscode zu schreiben, der die Uhrzeit in der Komponente [lblHeure] festlegt. Wir stellen fest, dass dies von IntelliSense, dem Code-Vervollständigungstool, nicht erkannt wird.
- Schließen Sie [demo.aspx] und [demo.aspx.vb] nach dem Speichern und öffnen Sie sie anschließend erneut. Wechseln Sie zum Code in [demo.aspx.vb]. Diesmal wird die Komponente [lblHeure] aus [demo.aspx] von IntelliSense im Code [demo.aspx.vb] erkannt. Vervollständigen Sie den Code:

- Erstellen Sie das Projekt, indem Sie [Build/Build demo] auswählen. Wenn die Erstellung erfolgreich ist, wird die DLL im Ordner [bin] des Projekts generiert:

- Wir sind bereit für den Test. Wir konfigurieren den Cassini-Server (siehe nächster Absatz) wie folgt:

Das Ziel der Verknüpfung zu Cassini wird wie folgt festgelegt:
"E:\Program Files\Microsoft ASP.NET Web Matrix\v0.6.812\WebServer.exe" /path:"D:\temp\07-04-05\demo" /vpath:"/demo"
der Pfad zur ausführbaren Datei | |
der Pfad zum Ordner des Visual Studio-Webprojekts | |
der zugehörige virtuelle Pfad |
- Starten Sie Cassini. Das Symbol erscheint in der Taskleiste. Klicken Sie mit der rechten Maustaste darauf und wählen Sie die Option [Details anzeigen], um zu überprüfen, ob der Webserver korrekt konfiguriert ist:

- Rufen Sie die von uns erstellte Seite über einen Browser auf, indem Sie die URL [http://localhost/demo/demo.aspx] eingeben. Wir erhalten das folgende Ergebnis:

Wir haben erfolgreich eine Webanwendung in Visual Studio erstellt unter Verwendung von:
- ein [Klassenbibliotheks-]Projekt
- dem Cassini-Webserver
Wir wissen nun, wie man Webanwendungen auf Computern erstellt, auf denen der IIS-Server nicht installiert ist, wie z. B. auf Rechnern mit Windows XP Home Edition.
3.2. Wo finden Sie den Cassini-Webserver?
Um mit der .NET-Plattform von Microsoft zu arbeiten, können Sie den Cassini-Webserver verwenden. Er ist über ein Produkt namens [WebMatrix] verfügbar, eine kostenlose Webentwicklungsumgebung für .NET-Plattformen, die unter folgender URL zu finden ist:

Befolgen Sie die Schritte zur Produktinstallation sorgfältig:
- Laden Sie die .NET-Plattform herunter und installieren Sie sie (Stand März 2004: 1.1)
- Laden Sie WebMatrix herunter und installieren Sie es
- Laden Sie MSDE (Microsoft Data Engine) herunter und installieren Sie es. Dabei handelt es sich um eine eingeschränkte Version von SQL Server.
Sobald die Installation abgeschlossen ist, ist das Produkt [WebMatrix] unter den installierten Programmen verfügbar:

Über den Link [ASP.NET] Web Matrix wird die ASP.NET-Entwicklungsumgebung gestartet:

Der Link [Class Browser] startet ein Tool zum Durchsuchen von .NET-Klassen:

Um die Installation zu testen, starten wir [WebMatrix]:
![]() |
Beim ersten Start fordert [WebMatrix] Sie auf, die Spezifikationen für das neue Projekt anzugeben. Dies ist die Standardkonfiguration. Sie können das Programm so konfigurieren, dass dieses Dialogfeld beim Start nicht mehr angezeigt wird. Sie können dann über die Option [Datei/Neue Datei] darauf zugreifen. Mit [WebMatrix] können Sie Vorlagen für verschiedene Webanwendungen erstellen. Oben haben wir in (1) angegeben, dass wir eine [ASP.NET-Seite]-Anwendung erstellen möchten, also eine Webseite. In (2) geben wir den Ordner an, in dem diese Webseite abgelegt werden soll. In (3) geben wir den Namen der Seite ein. Er muss die Erweiterung .aspx haben. Schließlich geben wir in (4) an, dass wir mit der Sprache VB.NET arbeiten möchten; [WebMatrix] unterstützt auch die Sprachen C# und J#. Sobald dies erledigt ist, zeigt [WebMatrix] eine Bearbeitungsseite für die Datei [demo1.aspx] an. Dort geben wir den folgenden Code ein:

- Auf der Registerkarte [Design] können Sie die Webseite, die Sie erstellen möchten, „gestalten“. Dies funktioniert ähnlich wie bei einer IDE zur Entwicklung von Windows-Anwendungen.
- Das grafische Design der Webseite in [Design] generiert HTML-Code auf der Registerkarte [HTML]
- Die Webseite kann Steuerelemente enthalten, die Ereignisse generieren, die eine Reaktion erfordern, wie beispielsweise eine Schaltfläche. Diese Ereignisse werden durch VB.NET-Code behandelt, der auf der Registerkarte [Code] platziert wird
- Letztendlich ist die Datei „demo1.aspx“ eine Textdatei, die HTML-Code und VB.NET-Code kombiniert und aus dem in [Design] erstellten grafischen Entwurf, dem manuell in [HTML] hinzugefügten HTML-Code und dem in [Code] platzierten VB.NET-Code resultiert. Die gesamte Datei ist auf der Registerkarte [All] verfügbar.
- Ein erfahrener ASP.NET-Entwickler kann die Datei „demo1.aspx“ direkt mit einem Texteditor erstellen, ohne auf eine IDE zurückgreifen zu müssen.
Wählen wir die Option [All] aus. Wir sehen, dass [WebMatrix] bereits etwas Code generiert hat:
<%@ Page Language="VB" %>
<script runat="server">
' Insert page code here
'
</script>
<html>
<head>
</head>
<body>
<form runat="server">
<!-- Insert content here -->
</form>
</body>
</html>
Wir werden hier nicht versuchen, diesen Code zu erklären. Wir werden ihn wie folgt umwandeln:
<html>
<head>
<title>Démo asp.net </title>
</head>
<body>
Il est <% =Date.Now.ToString("hh:mm:ss") %>
</body>
</html>
Der obige Code ist eine Mischung aus HTML- und VB.NET-Code. Er wurde innerhalb der Tags <% ... %> platziert. Um diesen Code auszuführen, verwenden wir die Option [Ansicht/Starten]. [WebMatrix] startet dann den Cassini-Webserver, falls dieser noch nicht läuft

Sie können die in diesem Dialogfeld angebotenen Standardwerte übernehmen und die Option [Start] auswählen. Der Webserver ist dann aktiv. [WebMatrix] startet daraufhin den Standardbrowser auf dem Rechner, auf dem es ausgeführt wird, und ruft die URL http://localhost:8080/demo1.aspx auf:

Es ist möglich, den Cassini-Server außerhalb von [WebMatrix] zu verwenden. Die ausführbare Datei des Servers befindet sich unter <WebMatrix>\<version>\WebServer.exe, wobei <WebMatrix> das Installationsverzeichnis von [WebMatrix] und <version> die Versionsnummer ist:

Öffnen Sie ein Eingabeaufforderungsfenster und wechseln Sie in den Ordner des Cassini-Servers:
E:\Program Files\Microsoft ASP.NET Web Matrix\v0.6.812>dir
...
29/05/2003 11:00 53 248 WebServer.exe
...
Führen wir [WebServer.exe] ohne Parameter aus:
Es erscheint ein Hilfefenster:

Die Anwendung [WebServer], auch bekannt als Cassini-Webserver, akzeptiert drei Parameter:
- /port: Portnummer des Webdienstes. Kann eine beliebige Zahl sein. Der Standardwert ist 80
- /path: der physische Pfad zu einem Ordner auf der Festplatte
- /vpath: der virtuelle Ordner, der dem vorangehenden physischen Ordner zugeordnet ist. Beachten Sie, dass die Syntax nicht /path=path lautet, sondern /vpath:path, entgegen der Angabe im [Beispiel] im obigen Hilfefenster.
Legen wir die Datei [demo1.aspx] im folgenden Ordner ab:

Ordnen wir den virtuellen Ordner [/webmatrix] dem physischen Ordner [d:\data\devel\webmatrix] zu. Der Webserver könnte wie folgt gestartet werden:
E:\Program Files\Microsoft ASP.NET Web Matrix\v0.6.812>webserver /port:100 /path:"d:\data\devel\webmatrix" /vpath:"/webmatrix"
Der Cassini-Server ist nun aktiv, und sein Symbol wird in der Taskleiste angezeigt. Wenn Sie darauf doppelklicken:

Sie sehen die Starteinstellungen des Servers. Außerdem haben Sie die Möglichkeit, den Webserver anzuhalten [Stopp] oder neu zu starten [Neustart]. Wenn Sie auf den Link [Root-URL] klicken, wird die Stammverzeichnisebene des Webverzeichnisbaums des Servers in einem Browser geöffnet:

Folgen Sie dem Link [demos]:

dann den Link [demo1.aspx]:

Wir sehen, dass, wenn der physische Ordner P=[d:\data\devel\webmatrix] dem virtuellen Ordner V=[/webmatrix] zugeordnet wurde und der Server auf Port 100 läuft, ist die Webseite [demo1.aspx], die sich physisch in [P\demos] befindet, lokal über die URL [http://localhost:100/V/demos/demo1.aspx] erreichbar.
Um zu vermeiden, dass Sie ein DOS-Fenster verwenden müssen, um den Cassini-Server zu starten, können Sie eine Verknüpfung zur ausführbaren Datei des Servers mit folgenden Eigenschaften erstellen:

"C:\Program Files\Microsoft ASP.NET Web Matrix\v0.6.812\WebServer.exe" /port:80 /path:"D:\data\serge\work\2004-2005\aspnet\webarticles-010405\version3\web" /vpath:"/webarticles" | |
"C:\Programme\Microsoft ASP.NET Web Matrix\v0.6.812" |
3.3. Wo finde ich Spring?
Die Hauptwebsite von Spring ist [http://www.springframework.org/]. Dies ist die Seite für die Java-Version. Die derzeit in Entwicklung befindliche .NET-Version (Stand: April 2005) ist unter [http://www.springframework.net/] verfügbar.

Die Download-Seite befindet sich auf [SourceForge]:

Sobald Sie die oben genannte ZIP-Datei heruntergeladen haben, entpacken Sie sie:

In diesem Dokument haben wir nur den Inhalt des Ordners [bin] verwendet:

In einem Visual Studio-Projekt, das Spring verwendet, müssen Sie immer zwei Dinge tun:
- die oben genannten Dateien im [bin]-Ordner des Projekts ablegen
- dem Projekt einen Verweis auf die Assembly [Spring.Core.dll] hinzufügen
3.4. Wo finden Sie NUnit?
Die offizielle NUnit-Website ist [http://www.nunit.org/]. Die im April 2005 verfügbare Version ist 2.2.0:

Laden Sie diese Version herunter und installieren Sie sie. Bei der Installation wird ein Ordner erstellt, der die grafische Testschnittstelle enthält:
Der interessante Teil befindet sich im Ordner [bin]:


Der Pfeil oben zeigt auf das grafische Testprogramm. Durch die Installation wurden außerdem neue Elemente zum Visual Studio-Assembly-Repository hinzugefügt, die wir uns nun ansehen werden.
Erstellen wir das folgende Visual Studio-Projekt:

Die zu testende Klasse befindet sich in [Person.vb]:
Public Class Personne
' private fields
Private _nom As String
Private _age As Integer
' default builder
Public Sub New()
End Sub
' properties associated with private fields
Public Property nom() As String
Get
Return _nom
End Get
Set(ByVal Value As String)
_nom = Value
End Set
End Property
Public Property age() As Integer
Get
Return _age
End Get
Set(ByVal Value As Integer)
_age = Value
End Set
End Property
' identity chain
Public Overrides Function tostring() As String
Return String.Format("[{0},{1}]", nom, age)
End Function
' init method
Public Sub init()
Console.WriteLine("init personne {0}", Me.ToString)
End Sub
' close method
Public Sub close()
Console.WriteLine("destroy personne {0}", Me.ToString)
End Sub
End Class
Die Testklasse befindet sich in [NunitTestPersonne-1.vb]:
Imports System
Imports NUnit.Framework
<TestFixture()> _
Public Class NunitTestPersonne
' object tested
Private personne1 As Personne
<SetUp()> _
Public Sub init()
' create an instance of Person
personne1 = New Personne
' log
Console.WriteLine("setup test")
End Sub
<Test()> _
Public Sub demo()
' log screen
Console.WriteLine("début test")
' init person1
With personne1
.nom = "paul"
.age = 10
End With
' tests
Assert.AreEqual("paul", personne1.nom)
Assert.AreEqual(10, personne1.age)
' log screen
Console.WriteLine("fin test")
End Sub
<TearDown()> _
Public Sub destroy()
' follow-up
Console.WriteLine("teardown test")
End Sub
End Class
Einige Dinge sind zu beachten:
- Methoden werden Attribute wie <Setup()>, <TearDown()> usw. zugewiesen
- Damit diese Attribute erkannt werden, muss Folgendes zutreffen:
- Das Projekt verweist auf die Assembly [nunit.framework.dll]
- Die Testklasse importiert den Namespace [NUnit.Framework]
Die Referenz wird hinzugefügt, indem man im Projektmappen-Explorer mit der rechten Maustaste auf [Referenzen] klickt:
![]() | ![]() |

Die Assembly [nunit.framework.dll] sollte in der Liste aufgeführt sein, wenn die Installation von [NUnit] erfolgreich war. Doppelklicken Sie einfach auf die Assembly, um sie dem Projekt hinzuzufügen:

Sobald dies erledigt ist, muss die Testklasse [NunitTestPersonne] den Namespace [NUnit.Framework] importieren:
Die Attribute der Testklasse [NunitTestPersonne] sollten dann erkannt werden.
- Das Attribut <Test()> kennzeichnet eine zu testende Methode
- Das Attribut <Setup()> kennzeichnet die Methode, die vor jeder zu testenden Methode ausgeführt werden soll
- Das Attribut <TearDown()> bezeichnet die Methode, die nach jeder zu testenden Methode ausgeführt werden soll
- Mit der Methode Assert.AreEqual können Sie die Gleichheit zweier Entitäten testen. Es gibt viele weitere Methoden vom Typ Assert.xx.
- Das NUnit-Dienstprogramm stoppt die Ausführung einer getesteten Methode, sobald eine [Assert]-Methode fehlschlägt, und zeigt eine Fehlermeldung an. Andernfalls wird eine Erfolgsmeldung angezeigt.
Konfigurieren wir unser Projekt so, dass eine DLL generiert wird:

Die generierte DLL erhält den Namen [nunit-demos-1.dll] und wird standardmäßig im Ordner [bin] des Projekts abgelegt. Erstellen wir unser Projekt. Im Ordner [bin] finden wir Folgendes:

Starten wir nun das grafische Testprogramm von NUnit. Denken Sie daran, dass es sich in <Nunit>\bin befindet und den Namen [nunit-gui.exe] trägt. <Nunit> bezieht sich auf den Installationsordner [Nunit]. Es erscheint die folgende Benutzeroberfläche:

Verwenden wir die Menüoption [Datei/Öffnen], um die DLL [nunit-demos-1.dll] aus unserem Projekt zu laden:

[Nunit] kann die in der geladenen DLL enthaltenen Testklassen automatisch erkennen. Hier findet es die Klasse [NunitTestPersonne]. Anschließend werden alle Methoden der Klasse angezeigt, die das Attribut <Test()> tragen. Mit der Schaltfläche [Ausführen] können Sie die Tests für das ausgewählte Objekt ausführen. Handelt es sich dabei um die Klasse [NunitTestPersonne], werden alle angezeigten Methoden getestet. Sie können eine bestimmte Methode testen, indem Sie sie auswählen und auf [Run] klicken. Lassen Sie uns die Klasse ausführen:

Ein erfolgreicher Test einer Methode wird durch einen grünen Punkt neben der Methode im linken Fenster angezeigt. Ein fehlgeschlagener Test wird durch einen roten Punkt angezeigt.
Das Fenster [Console.Out] auf der rechten Seite zeigt die Bildschirmausgabe der getesteten Methoden an. Hier wollten wir den Fortschritt eines Tests verfolgen:
- Zeile 1 zeigt, dass die Attributmethode <Setup()> vor dem Test ausgeführt wird
- Die Zeilen 2–3 werden von der zu testenden [demo]-Methode generiert (siehe den Code oben)
- Zeile 4 zeigt, dass die Attributmethode <TearDown()> nach dem Test ausgeführt wird
3.5. Wo finde ich das DBMS Firebird ?
Die Hauptwebsite von Firebird ist [http://firebird.sourceforge.net/]. Die Download-Seite bietet die folgenden Links (Stand: April 2005):

Sie laden die folgenden Elemente herunter:
das DBMS für Windows | |
eine Klassenbibliothek für .NET-Anwendungen, die den Zugriff auf das DBMS ohne Verwendung eines ODBC-Treibers ermöglicht. | |
der Firebird-ODBC-Treiber |
Installieren Sie diese Komponenten. Das DBMS wird in einem Ordner installiert, dessen Inhalt in etwa wie folgt aussieht:

Die Binärdateien befinden sich im Ordner [bin]:

ermöglicht es Ihnen, das DBMS zu starten/zu stoppen | |
Befehlszeilen-Client zur Verwaltung von Datenbanken |
Beachten Sie, dass der DBMS-Administrator standardmäßig [SYSDBA] heißt und das Passwort [masterkey] lautet. Unter [Start] wurden Menüs hinzugefügt:

Über die Option [Firebird Guardian] können Sie das DBMS starten/beenden. Nach dem Start bleibt das DBMS-Symbol in der Windows-Taskleiste:
![]() |
Um Firebird-Datenbanken mit dem Befehlszeilen-Client [isql.exe] zu erstellen und zu verwalten, müssen Sie die im [doc]-Ordner enthaltene Dokumentation lesen. Eine schnellere Möglichkeit, mit Firebird zu arbeiten, ist die Verwendung eines grafischen Clients. Ein solcher Client ist IB-Expert, der im folgenden Abschnitt beschrieben wird.
3.6. Wo finde ich IB- -Expert?
Die offizielle Firebird-Website lautet [http://www.ibexpert.com/]. Die Download-Seite bietet die folgenden Links:

Wählen Sie die kostenlose Version [Personal Edition]. Nach dem Herunterladen und der Installation verfügen Sie über einen Ordner, der in etwa wie folgt aussieht:

Die ausführbare Datei heißt [ibexpert.exe]. Im [Start]-Menü ist in der Regel eine Verknüpfung vorhanden:

Nach dem Start zeigt IBExpert das folgende Fenster an:

Verwenden Sie die Option [Datenbank/Datenbank erstellen], um eine Datenbank zu erstellen:

kann [lokal] oder [remote] sein. In diesem Fall befindet sich unser Server auf demselben Rechner wie [IBExpert]. Daher wählen wir [lokal] | |
Verwenden Sie die Schaltfläche [Ordner] im Dropdown-Menü, um die Datenbankdatei auszuwählen. Firebird speichert die gesamte Datenbank in einer einzigen Datei. Dies ist einer seiner Vorteile. Sie können die Datenbank von einem Computer auf einen anderen übertragen, indem Sie die Datei einfach kopieren. Die Endung [.gdb] wird automatisch hinzugefügt. | |
SYSDBA ist der Standardadministrator für aktuelle Firebird-Distributionen | |
masterkey ist das Passwort für den SYSDBA-Administrator in aktuellen Firebird-Distributionen | |
Der zu verwendende SQL-Dialekt | |
Wenn dieses Kontrollkästchen aktiviert ist, zeigt IBExpert nach der Erstellung der Datenbank einen Link zu dieser an |
Wenn beim Klicken auf die Schaltfläche [OK] zum Erstellen der Datenbank die folgende Warnung angezeigt wird:

bedeutet dies, dass Sie Firebird noch nicht gestartet haben. Starten Sie es. Es erscheint ein neues Fenster:

[IBExpert] kann verschiedene von Interbase abgeleitete DBMS verwalten. Wählen Sie die Version von Firebird aus, die Sie installiert haben |
![]()
Sobald Sie dieses neue Fenster durch Klicken auf [Registrieren] bestätigen, sehen Sie das folgende Ergebnis:

Um auf die erstellte Datenbank zuzugreifen, doppelklicken Sie einfach auf den entsprechenden Link. IBExpert zeigt dann eine Baumansicht an, über die Sie Zugriff auf die Eigenschaften der Datenbank haben:

Erstellen wir eine Tabelle. Klicken Sie mit der rechten Maustaste auf [Tabellen] und wählen Sie die Option [Neue Tabelle]. Das Fenster zur Definition der Tabelleneigenschaften wird angezeigt:
![]() |
Beginnen wir damit, die Tabelle über das Eingabefeld [1] mit dem Namen [ARTICLES] zu versehen:
![]() |
Verwenden Sie das Eingabefeld [2], um einen Primärschlüssel [ID] zu definieren:
![]() |
Ein Feld wird durch Doppelklick auf das Feld [PK] (Primärschlüssel) zum Primärschlüssel gemacht. Fügen wir nun über die Schaltfläche [3] Felder hinzu:

Solange wir unsere Definition nicht „kompiliert“ haben, wird die Tabelle nicht erstellt. Klicken Sie oben auf die Schaltfläche [Kompilieren], um die Tabellendefinition abzuschließen. IBExpert bereitet die SQL-Abfragen zur Erstellung der Tabelle vor und fordert Sie zur Bestätigung auf:

Interessanterweise zeigt IBExpert die ausgeführten SQL-Abfragen an. So können Sie sowohl die SQL-Sprache als auch etwaige proprietäre SQL-Dialekte erlernen, die möglicherweise verwendet werden. Die Schaltfläche [Commit] bestätigt die aktuelle Transaktion, während [Rollback] sie abbricht. Hier bestätigen wir sie durch Klicken auf [Commit]. Sobald dies geschehen ist, fügt IBExpert die erstellte Tabelle zu unserer Datenbankstruktur hinzu:

Durch Doppelklicken auf die Tabelle können wir auf ihre Eigenschaften zugreifen:

Über das Fenster [Constraints] können wir der Tabelle neue Integritätsbeschränkungen hinzufügen. Öffnen wir es:

Wir sehen die von uns erstellte Primärschlüsselbeschränkung. Wir können weitere Beschränkungen hinzufügen:
- Fremdschlüssel [Foreign Keys]
- Feldintegritätsbeschränkungen [Checks]
- Eindeutigkeitsbeschränkungen für Felder [Uniques]
Beachten Sie Folgendes:
- Die Felder [ID, PRICE, CURRENTSTOCK, MINIMUMSTOCK] müssen größer als 0 sein
- das Feld [NAME] darf nicht leer sein und muss eindeutig sein
Öffnen Sie das Fenster [Checks] und klicken Sie mit der rechten Maustaste in den Bereich für die Definition von Einschränkungen, um eine neue Einschränkung hinzuzufügen:

Definieren wir nun die gewünschten Einschränkungen:

Beachten Sie oben, dass die Einschränkung [NAME<>''] zwei einfache Anführungszeichen verwendet, keine doppelten. Kompilieren Sie diese Einschränkungen über die Schaltfläche [Compile] oben:

Erneut beweist IBExpert seine Benutzerfreundlichkeit, indem es die ausgeführten SQL-Abfragen anzeigt. Wechseln wir nun zum Bereich [Constraints/Unique], um festzulegen, dass der Name eindeutig sein muss:

Definieren wir die Einschränkung:

Kompilieren wir sie. Sobald dies erledigt ist, öffnen Sie das [DDL]-Fenster für die Tabelle [ARTICLES]:

In diesem Fenster wird der SQL-Code zur Erstellung der Tabelle mit all ihren Einschränkungen angezeigt. Sie können diesen Code in einem Skript speichern, um ihn später auszuführen:
SET SQL DIALECT 3;
SET NAMES NONE;
CREATE TABLE ARTICLES (
ID INTEGER NOT NULL,
NOM VARCHAR(20) NOT NULL,
PRIX DOUBLE PRECISION NOT NULL,
STOCKACTUEL INTEGER NOT NULL,
STOCKMINIMUM INTEGER NOT NULL
);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_ID check (ID>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_PRIX check (PRIX>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_STOCKACTUEL check (STOCKACTUEL>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_STOCKMINIMUM check (STOCKMINIMUM>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_NOM check (NOM<>'');
ALTER TABLE ARTICLES ADD CONSTRAINT UNQ_NOM UNIQUE (NOM);
ALTER TABLE ARTICLES ADD CONSTRAINT PK_ARTICLES PRIMARY KEY (ID);
Nun ist es an der Zeit, Daten in die Tabelle [ARTICLES] einzugeben. Verwenden Sie dazu das [Daten]-Fenster:

Die Daten werden durch Doppelklick auf die Eingabefelder der einzelnen Zeilen in der Tabelle eingegeben. Eine neue Zeile wird über die Schaltfläche [+] hinzugefügt, eine Zeile wird über die Schaltfläche [-] gelöscht. Diese Vorgänge werden innerhalb einer Transaktion ausgeführt, die über die Schaltfläche [Transaktion festschreiben] bestätigt wird. Ohne diese Bestätigung gehen die Daten verloren.
Mit IBExpert können Sie SQL-Abfragen über die Option [Tools/SQL Editor] oder [F12] ausführen. Dadurch erhalten Sie Zugriff auf einen erweiterten SQL-Abfrage-Editor, in dem Sie Abfragen ausführen können. Diese werden gespeichert, sodass Sie eine bereits ausgeführte Abfrage erneut aufrufen können. Hier ein Beispiel:

Wir führen die SQL-Abfrage über die Schaltfläche [Execute] oben aus. Wir erhalten das folgende Ergebnis:

Wir beenden unsere Demonstrationen an dieser Stelle. Die Kombination aus IBExpert und Firebird erweist sich als hervorragend geeignet, um sich mit Datenbanken vertraut zu machen.
3.7. Installation und Verwendung eines ODBC-Treibers für [Firebird]
3.8. Installation des Treibers
Über den Link [firebird-odbc-provider] auf der [Firebird]-Downloadseite (Abschnitt 3.5) können Sie einen ODBC-Treiber herunterladen. Nach der Installation wird dieser in der Liste der installierten ODBC-Treiber angezeigt.
3.9. Erstellen Sie eine ODBC-Datenquelle
- Starten Sie das Tool [Start -> Einstellungen -> Konfigurationstool -> Verwaltung -> ODBC-Datenquellen]:

- Das folgende Fenster wird angezeigt:

- Klicken Sie auf [Hinzufügen], um eine neue Systemdatenquelle (im Bereich [System-DSN]) hinzuzufügen, die wir mit der Firebird-Datenbank verknüpfen werden, die wir im vorherigen Abschnitt erstellt haben:

- Zunächst müssen wir den zu verwendenden ODBC-Treiber angeben. Oben wählen wir den Treiber für Firebird aus und klicken dann auf [Fertigstellen]. Der Firebird-ODBC-Treiber-Assistent übernimmt dann die weitere Vorgehensweise:

- Wir füllen die verschiedenen Felder aus:

der DSN-Name der ODBC-Quelle – kann beliebig sein | |
Der Name der zu verwendenden Firebird-Datenbank – verwenden Sie [Durchsuchen], um die entsprechende .gbd-Datei auszuwählen | |
Der Benutzername, der für die Verbindung zur Datenbank verwendet werden soll | |
das zu diesem Benutzernamen gehörende Passwort |
Mit der Schaltfläche [Verbindung testen] können Sie die Richtigkeit der eingegebenen Informationen überprüfen. Starten Sie vor der Verwendung das DBMS [Firebird]:

- Bestätigen Sie den ODBC-Assistenten, indem Sie so oft wie nötig auf [OK] klicken
3.10. Testen Sie die ODBC-Quelle
Es gibt verschiedene Möglichkeiten, um zu überprüfen, ob eine ODBC-Quelle ordnungsgemäß funktioniert. Hier verwenden wir Excel:

- Verwenden Sie die oben genannte Option [Daten -> Externe Daten -> Abfrage erstellen]. Dadurch wird das erste Fenster des Assistenten zur Definition der Datenquelle geöffnet. Im Bereich [Datenbanken] werden die derzeit auf dem Rechner definierten ODBC-Quellen aufgelistet:

- Wählen Sie die soeben erstellte ODBC-Quelle [odbc-firebird-articles] aus und fahren Sie mit dem nächsten Schritt fort, indem Sie auf [OK] klicken:

- In diesem Fenster werden die in der ODBC-Quelle verfügbaren Tabellen und Spalten aufgelistet. Wir wählen die gesamte Tabelle aus:

- Fahren Sie mit dem nächsten Schritt fort, indem Sie auf [Weiter] klicken:

- In diesem Schritt können wir die Daten filtern. Hier werden wir nichts filtern und mit dem nächsten Schritt fortfahren:

- In diesem Schritt können wir die Daten sortieren. Wir werden dies nicht tun und fahren mit dem nächsten Schritt fort:

- Im letzten Schritt werden wir gefragt, was wir mit den Daten machen möchten. Hier exportieren wir sie nach Excel:

- Hier fragt Excel, wo wir die abgerufenen Daten ablegen möchten. Wir legen sie im aktiven Arbeitsblatt beginnend mit Zelle A1 ab. Die Daten werden dann in das Excel-Arbeitsblatt übernommen:

Es gibt noch andere Möglichkeiten, die Gültigkeit einer ODBC-Quelle zu testen. Sie können beispielsweise die kostenlose OpenOffice-Suite verwenden, die unter [http://www.openoffice.org] verfügbar ist. Hier ist ein Beispiel für die Verwendung von OpenOffice:
![]() | ![]() |
- Über ein Symbol auf der linken Seite des OpenOffice-Fensters gelangen Sie zu den Datenquellen. Die Benutzeroberfläche wechselt daraufhin und zeigt einen Bereich zur Verwaltung der Datenquellen an:

- Eine Datenquelle ist vordefiniert: die Quelle [Bibliografie]. Durch einen Rechtsklick auf den Datenquellenbereich können Sie über die Option [Datenquellen verwalten] eine neue Datenquelle erstellen:

- Über den Assistenten [Datenquellenverwaltung] können Sie Datenquellen erstellen. Durch einen Rechtsklick auf den Datenquellenbereich können Sie über die Option [Neue Datenquelle] eine neue Datenquelle erstellen:

Beliebiger Name. Hier haben wir den Namen der ODBC-Quelle verwendet | |
OpenOffice unterstützt verschiedene Datenbanktypen über JDBC, ODBC oder direkt (MySQL, Dbase usw.). Wählen Sie für unser Beispiel „ODBC“ | |
Über die Schaltfläche rechts neben dem Eingabefeld gelangen wir zur Liste der ODBC-Quellen auf dem Rechner. Wir wählen die Quelle [odbc-firebird-articles] aus. |
- Wir wechseln zum [ODBC]-Fenster, um den Benutzer zu definieren, unter dessen Anmeldedaten die Verbindung hergestellt werden soll:

Der Eigentümer der ODBC-Quelle |
- Wechseln Sie zum Bereich [Tabellen]. Sie werden zur Eingabe des Passworts aufgefordert. Hier lautet es [masterkey]:

- Klicken Sie auf [OK]. Daraufhin wird die Liste der Tabellen in der ODBC-Quelle angezeigt:

- Sie können die Tabellen auswählen, die im [OpenOffice]-Dokument angezeigt werden sollen. Hier wählen wir die Tabelle [ARTICLES] aus und klicken auf [OK]. Die Definition der Datenquelle ist abgeschlossen. Sie erscheint nun in der Liste der Datenquellen für das aktive Dokument:

- Sie können die Tabelle [ARTICLES] mit der Maus aus der Liste in das [OpenOffice]-Dokument ziehen:

3.11. Verbindungszeichenfolge für eine Firebird-ODBC-Quelle
- Starten Sie Visual Studio und öffnen Sie den Server-Explorer [Ansicht/Server-Explorer]:
![]() |
- Klicken Sie mit der rechten Maustaste auf [Datenverbindung] und wählen Sie die Option [Verbindung hinzufügen]:

- Geben Sie im Bereich [Anbieter] an, dass Sie eine ODBC-Quelle verwenden möchten (siehe oben), und wechseln Sie dann zum Bereich [Verbindung]:

Wählen Sie die ODBC-Quelle aus dem Dropdown-Menü aus. Die soeben erstellte Quelle sollte angezeigt werden. Verwenden Sie bei Bedarf [Aktualisieren], um die Liste der ODBC-Quellen zu aktualisieren. | |
Benutzername für die Verbindung zur Datenbank | |
Das zu diesem Benutzernamen gehörende Passwort |
Auch hier können Sie über die Schaltfläche [Verbindung testen] die Richtigkeit der Angaben überprüfen:

- Bestätigen Sie den Assistenten, indem Sie auf [OK] klicken. Die Datenquelle wird dann im Fenster [Server Explorer] in Visual Studio angezeigt:

- Durch Doppelklicken auf die Tabelle [ARTICLES] können Sie auf die Daten der Tabelle zugreifen:

- Wenn wir mit der rechten Maustaste auf den Link [Firebird Server D:\temp\... ] klicken und die Option [Eigenschaften] auswählen, können wir auf die Verbindungseigenschaften zugreifen:

- Die Eigenschaft [ConnectString] ist wichtig, da der .NET-Code sie benötigt, um eine Verbindung zur Datenbank herzustellen. Hier lautet die Verbindungszeichenfolge:
Provider=MSDASQL.1;Persist Security Info=False;User ID=SYSDBA;Data Source=demo-odbc-firebird;Extended Properties="DSN=demo-odbc-firebird;Driver=Firebird/InterBase(r) driver;Dbname=D:\temp\07-04-05\firebird\DBARTICLES.GDB;CHARSET=NONE;UID=SYSDBA"
Viele Elemente dieser Verbindungszeichenfolge haben Standardwerte. Die folgende Verbindungszeichenfolge ist ausreichend:
Damit ist unser Überblick über den [Firebird]-ODBC-Treiber abgeschlossen.
3.12. Wo finden Sie die MSDE- ?
MSDE ist die kostenlose Version des Datenbankmanagementsystems SQL Server von Microsoft. Sie finden es unter der URL [http://www.microsoft.com/sql/msde/downloads/download.asp]:
![]() |
![]() | ![]() |
Laden Sie die Installationsdatei herunter und installieren Sie das DBMS durch Doppelklick auf die heruntergeladene ausführbare Datei. In einem Fenster werden Sie nach dem Installationsordner gefragt. Der Titel ist irreführend. Es handelt sich um einen temporären Ordner, der später gelöscht werden kann:
![]() | ![]() |
Lesen Sie die Datei [ReadmeMSDE2000A.htm] sorgfältig durch. Das Installationsprogramm ist die oben genannte Datei [setup.exe]. Es wird über die Befehlszeile ausgeführt, sodass Sie ihm Parameter übergeben können. Die wichtigsten sind die folgenden:
Beschreibung | |
| Gibt ein sicheres Passwort an, das dem Administrator-Login „sa“ zugewiesen werden soll. |
| Definiert den Instanznamen. Wenn INSTANCENAME nicht angegeben wird, installiert das Installationsprogramm eine Standardinstanz. |
Weitere Parameter, die häufig zur Anpassung einer Installation verwendet werden, sind:
Beschreibung | |
Gibt an, ob die Instanz Netzwerkverbindungen von Anwendungen akzeptiert, die auf anderen Computern ausgeführt werden. Standardmäßig oder wenn Sie DISABLENETWORKPROTOCOLS=1 angeben, konfiguriert das Installationsprogramm die Instanz so, dass Netzwerkverbindungen abgelehnt werden. Geben Sie DISABLENETWORKPROTOCOLS=0 an, um Netzwerkverbindungen zu aktivieren. | |
Gibt an, dass die Instanz im gemischten Modus installiert werden soll, was bedeutet, dass die Instanz sowohl die Windows-Authentifizierung als auch die SQL-Authentifizierung für Verbindungen unterstützt | |
| Gibt den Ordner an, in dem das Installationsprogramm die Systemdatenbanken, Fehlerprotokolle und Installationsskripte installiert. Der für data_folder_path angegebene Wert muss mit einem Backslash (\) enden. Bei einer Standardinstanz hängt das Installationsprogramm MSSQL\ an den angegebenen Wert an. Bei einer benannten Instanz hängt der Installer „MSSQL$InstanceName\“ an, wobei „InstanceName“ der über den Parameter INSTANCENAME angegebene Wert ist. Der Installer erstellt an dem angegebenen Speicherort drei Ordner: einen Datenordner, einen Protokollordner und einen Skriptordner. |
| Gibt den Ordner an, in dem das Installationsprogramm die ausführbaren MSDE 2000-Dateien installiert. Der für executable_folder_path angegebene Wert muss mit einem Backslash (\) enden. Bei einer Standardinstanz hängt das Installationsprogramm MSSQL\Binn an den angegebenen Wert an. Bei einer benannten Instanz hängt das Installationsprogramm „MSSQL$InstanceName\Binn“ an, wobei „InstanceName“ der über den Parameter „INSTANCENAME“ angegebene Wert ist. |
Nachdem Sie die obigen Installationsempfehlungen gelesen haben, wechseln Sie in den Ordner, in den die Installationsdateien extrahiert wurden, und geben Sie den folgenden DOS-Befehl ein (bei Verwendung des DBMS ohne Netzwerk):
- INSTANCENAME="MSDE140405" – dies ist der Name unserer MSDE-Instanz. Sie können mehrere Instanzen installieren.
- SECURITYMODE=SQL – das DBMS wird im gemischten Authentifizierungsmodus ausgeführt. Dadurch können Sie auf zwei Arten eine Verbindung zu MSDE herstellen:
- mit einem Windows-Administratorkonto
- mit einem MSDE-Konto – hierfür sind ein Benutzername und ein Passwort erforderlich. Dies ist der Modus, der in einem Programm verwendet werden sollte, das eine Verbindung zu einer Datenbank herstellt.
- SAPWD="azerty" – dies ist das Passwort für den DBMS-Benutzer [sa]. Der Benutzer [sa] verfügt über Administratorrechte für das DBMS.
Um das DBMS in einem Netzwerk zu nutzen, würden Sie den folgenden Befehl ausführen:
Das Installationsprogramm ist minimalistisch und läuft ohne jegliche Ausgabe ab... Sie können jedoch über die Option [Startmenü -> Systemsteuerung -> Programme hinzufügen oder entfernen] überprüfen, ob das DBMS installiert wurde:
![]()
Die Installation erfolgt normalerweise unter C:\Programme\Microsoft SQL Server\MSSQL$instanceName:
![]() | ![]() |
Im Ordner [LOG] innerhalb des Installationsverzeichnisses finden Sie die Protokolldatei für die DBMS-Installationsphase. Sie enthält eine wichtige Information: den Namen der MSDE-Instanz:
Es ist wichtig, diesen Namen zu kennen, da alle DBMS-Clients ihn benötigen. Falls diese Protokolle fehlen, können Sie den Namen eines MSDE-Servers ermitteln, der wie folgt lautet: [windows_machine\MSDE_instance_name]. Der Rechnername ist an mehreren Stellen zu finden. Zum Beispiel:
- Klicken Sie mit der rechten Maustaste auf [Arbeitsplatz] auf dem Desktop, wählen Sie [Eigenschaften] und dann die Registerkarte [Computername]:

Wir wissen immer noch nicht, wie man den MSDE-Server startet. Normalerweise befindet sich eine Verknüpfung unter [Start/Autostart].

Wenn Sie sich die Eigenschaften dieser Verknüpfung ansehen, werden Sie feststellen, dass das Ziel wie folgt lautet:
Im Ordner [C:\Program Files\Microsoft SQL Server] befinden sich folgende Unterordner:

- MSSQL$MSDE140405 ist der Ordner für die soeben installierte MSDE-Instanz.
- MSSQL ist der Ordner für eine frühere MSDE-Instanz. Da er keinen Namen hat, nennen wir ihn die Standardinstanz.
- Der Ordner [80] ist ein gemeinsamer Ordner für die verschiedenen installierten MSDE-Instanzen. Das Ziel [sqlmangr.exe] der Verknüpfung, die eine MSDE-Instanz startet, befindet sich im Ordner [80\Tools\Binn].
Starten wir MSDE über die Verknüpfung unter [Start -> Programme -> Autostart]. Es passiert fast nichts, außer dass ein Symbol in der Taskleiste erscheint: | Doppelklicken Sie auf dieses Symbol: ![]() |
Der hier angezeigte MSDE-Server ist der Standard-Server [PORTABLE1_TAHE] auf dem Rechner. Beachten Sie, dass der von uns installierte MSDE-Server den Namen [PORTABLE1_TAHE\MSDE140405] heißt. Wir ändern den Servernamen im entsprechenden Feld: ![]() | Wenn alles gut geht, sollte die Instanz [MSDE140405] gestartet werden: ![]() |
Wir können eine erste Überprüfung durchführen. Im selben Ordner wie [sqlmangr.exe] befindet sich ein Konsolen-Client [osql.exe], mit dem Sie eine Verbindung zu einem MSDE-Server herstellen und SQL-Befehle ausführen können. Bei der Installation haben wir dem Administrator [sa] unseres MSDE-Servers das Passwort [azerty] zugewiesen. Mit dem Konsolen-Client stellen wir eine Verbindung zum neu installierten Server her. Wenn wir den Befehl [osql -?] ausführen, wird die Liste der möglichen Parameter angezeigt:
C:\Program Files\Microsoft SQL Server\80\Tools\Binn>osql -?
utilisation : osql
[-U ID de connexion]
[-P mot de passe]
[-S serveur]
[-H nom de l'host]
[-E connexion approuvée]
[-d utiliser le nom de la base de données]
[-l limite du temps de connexion]
[-t limite du temps de requête]
[-h en-têtes]
[-s séparateur de colonnes]
[-w largeur de colonne]
[-a taille du paquet]
[-e entrée d'echo]
[-I Activer les identificateurs marqués]
[-L liste des serveurs]
[-c fin de cmd] [-D nom ODBC DSN]
[-q "requête cmdline"]
[-Q "requête cmdline" et quitter]
[-n supprimer la numérotation]
[-m niveau d'error]
[-r msgs vers stderr]
[-V severitylevel]
[-i fichier d'entry]
[-o fichier de sortie]
[-p imprimer les statistiques] [-b abandon du lot d'instruction after error]
[-X[1] désactive les commandes [et quitte avec un avertissement]]
[-O utiliser le comportement Old ISQL désactive les éléments suivants]
<EOF> traitement par lot d'instructions
Mise à l'automatic console width scaling
Messages larges
niveau d'default error -1 instead of 1
[-? description de la syntaxe]
Starten Sie den Server [MSDE140405] wie oben beschrieben und stellen Sie dann in einem Eingabeaufforderungsfenster mit [osql] eine Verbindung zum Server [portable1_tahe\msde140405] unter der Identität [sa, azerty] her:
C:\Program Files\Microsoft SQL Server\80\Tools\Binn>OSQL.EXE -U sa -S portable1_tahe\msde140405 -P azerty
1>
Die Eingabeaufforderung [1>] zeigt an, dass [osql] auf einen Befehl wartet. Die Verbindung wurde erfolgreich hergestellt. Um [osql] korrekt zu verwenden, sollten Sie die MSDE-Dokumentation konsultieren. Diese ist in verschiedenen Formaten (PDF, HTML-Hilfe usw.) verfügbar. Diese Dokumentation ist recht umfangreich. Im Allgemeinen ist es vorzuziehen, einen grafischen Client für die Arbeit mit einer MSDE-Datenbank zu verwenden. Dies wird etwas weiter unten vorgeschlagen. Um [osql] zu beenden, verwenden Sie den Befehl [exit]:
Wir werden nun sehen, wie man Datenbanken auf dem neu installierten MSDE-Server erstellt. Zuvor stellen wir kurz ein Tool namens [MSDE Manager] vor, mit dem Sie den Authentifizierungsmodus eines MSDE-Servers ändern können. Wenn Sie einen solchen Server mit den Standardinstallationsoptionen installieren, ist der Authentifizierungsmodus des Servers auf [Windows-Authentifizierung] eingestellt. Diese Art der Authentifizierung erlaubt nur Benutzern, die auf dem Windows-Rechner identifiziert wurden (möglicherweise über eine Domäne). Für ein VB.NET-Programm, das eine Verbindung zu einer Datenbank herstellen möchte, um deren Inhalt zu nutzen, ist dieser Modus unpraktisch. Noch problematischer ist es für Java-Anwendungen, die über einen JDBC-Treiber auf das DBMS zugreifen. In solchen Fällen ist die gemischte Authentifizierung vorzuziehen, da sie zusätzlich zur bisherigen Authentifizierungsmethode auch im DBMS definierte Benutzername/Passwort-Paare akzeptiert. Mit dem Tool [MSDE Manager] können Sie diesen Vorgang durchführen.
3.13. Wo finde ich den MSDE Manager?
[MSDE Manager] ist ein Verwaltungstool für das MSDE-DBMS. Es ist unter der URL [http://www.valesoftware.com/] zu finden.
Wir laden die kostenlose Version über den obigen Link herunter:


Die Testversion hat eine kurze Laufzeit. Das ist in Ordnung, da wir sie nur für eine einzige, bestimmte Aufgabe verwenden werden. Laden Sie das Produkt herunter und installieren Sie es. Auf dem Desktop wird eine Verknüpfung angelegt. Verwenden Sie diese, um den MSDE Manager zu starten. Nach den ersten Fenstern gelangen Sie zu diesem:

- Starten Sie den MSDE140405-Server
- Sie müssen als Administrator auf dem Windows-Rechner angemeldet sein
- Klicken Sie mit der rechten Maustaste auf den Link [SQL Server Group] und wählen Sie die Option [New SQL Server Registration]:


Die folgende Eigenschaftenseite wird angezeigt:
![]() |
portable1_tahe\msde140405 – Name der MSDE-Instanz, mit der Sie eine Verbindung herstellen möchten | |
Windows-Authentifizierung – dieser Modus ist immer verfügbar und ermöglicht es einem Windows-Systemadministrator, eine Verbindung zum MSDE-Server herzustellen | |
Wählen Sie die einzige aufgeführte Servergruppe [SQL Server-Gruppe] aus |
Sobald Sie auf [OK] klicken, wird der Eigenschaftsbaum für den Server MSDE140405 angezeigt:

Wir könnten nun mit der Erstellung von Datenbanken beginnen. Das werden wir jedoch nicht tun, da wir ein anderes Produkt verwenden werden, einen Klon des bereits behandelten IBExpert-Produkts. Wir werden lediglich den MSDE-Authentifizierungsmodus ändern. Klicken Sie mit der rechten Maustaste auf den oben genannten MSDE140405-Server und wählen Sie die Option [Design]:

Es erscheint das folgende Informationsfenster:

Die Registerkarte [Allgemein] enthält Informationen über den MSDE-Server, mit dem Sie verbunden sind. Die Seite [Sicherheit] ist für uns von Interesse:

Hier müssen Sie sicherstellen, dass der MSDE-Authentifizierungsmodus auf [SQL Server und Windows] eingestellt ist. Dadurch können Sie auf zwei Arten eine Verbindung zu MSDE herstellen:
- mit einem Windows-Administratorkonto – wie es hier geschehen ist
- mit einem MSDE-Konto – hierfür sind ein Benutzername und ein Passwort erforderlich. Dies ist der Modus, der in einem Programm verwendet werden sollte, das eine Verbindung zu einer DBMS-Datenbank herstellt.
Wir bestätigen diese Auswahl und beenden den MSDE-Manager. Wir werden ihn nicht mehr benötigen. Zum Erstellen von MSDE-Datenbanken verwenden wir ein anderes Tool: EMS MS SQL Manager.
3.14. Wo finden Sie den EMS- -MS-SQL-Manager?
Der EMS MS SQL Manager ist ein grafisches Tool für die Arbeit mit dem Datenbankmanagementsystem Microsoft SQL Server und somit auch mit MSDE. Es ähnelt stark dem zuvor beschriebenen Tool IB-Expert. Es ist unter der URL [http://sqlmanager.net/] (Stand: April 2005) verfügbar:

Die Website bietet Verwaltungstools für viele DBMS. Folgen Sie dem Link [MS SQL Manager]:

Oben wählen wir die Light-Version des Produkts aus. Laden Sie diese herunter und installieren Sie sie. Sie erhalten einen Ordner, der in etwa wie folgt aussieht:

Die ausführbare Datei heißt [MsManager.exe]. Normalerweise ist im [Start]-Menü eine Verknüpfung verfügbar:

Nach dem Start zeigt der MS SQL Manager das folgende Fenster an:

Beginnen wir damit, den MSDE-Server, mit dem wir arbeiten möchten, über die Option [Datenbank/Host registrieren] zu registrieren:
![]() |
Anmerkungen:
- Schritt 1 – Wie bereits erwähnt, unterstützt MSDE zwei Authentifizierungsmodi: Windows und SQL Server. Im [Windows]-Modus werden die Konten des Windows-Rechners verwendet. Im [SQL Server]-Modus werden die DBMS-Konten verwendet. [SQL Server] kann im [Windows]-Modus oder im gemischten [Windows, SQL Server]-Modus betrieben werden. Der [Windows]-Authentifizierungsmodus ist immer verfügbar. Der gemischte Authentifizierungsmodus ist jedoch nicht immer aktiv. Wir haben gesehen, wie man ihn mit dem MSDE-Manager aktiviert. Oben wurde die Verbindung über ein Administratorkonto hergestellt.
- Schritt 2 – Sobald die Authentifizierung erfolgreich war, werden die Standard-MSDE-Datenbanken angezeigt. Oben wurden alle ausgewählt.
![]() |
Anmerkungen:
- Schritt 3: Es können Verwaltungsoptionen für die ausgewählten Datenbanken ausgewählt werden. Hier wurden die Standardoptionen beibehalten.
- Schritt 4: Wir registrieren den MSDE-Server über die Schaltfläche [Registrieren]
Der MSDE-Server wird dann im Datenbank-Explorer angezeigt:

Verwenden wir die Option [Datenbank/Datenbank erstellen], um eine Datenbank zu erstellen:
![]() |
Schritt 2:
Wenn diese Informationsseite angezeigt wird, wurde die Datenbank [dbarticles] erstellt. Sie können dies überprüfen, indem Sie auf die Schaltfläche [Verbindung testen] klicken. In das Feld [Datenbankalias] können Sie einen beliebigen Namen eingeben. Hier haben wir Folgendes eingegeben:
- den Namen der Datenbank
- den Namen des MSDE-Servers, auf dem sie sich befindet
- den Benutzer [admarticles], der Eigentümer dieser Datenbank sein wird, und dessen Passwort [mdparticles]. Dieser Benutzer wurde noch nicht angelegt, wird aber in Kürze erstellt.
Schritt 3:
- Klicken Sie auf die Schaltfläche [Registrieren], um die neue Datenbank in [MS SQL Server] zu registrieren. Nach der Registrierung erscheint die Datenbank [admarticles] in der Liste der Datenbanken. Durch Doppelklicken darauf wird der Eigenschaftsbaum angezeigt.
![]() | ![]() |
Erstellen wir nun einen neuen Login, der als Administrator der Datenbank [admarticles] fungieren soll.
- Wählen Sie die Option [Tools/Login Manager]:

- Wir sehen, dass bereits zwei Anmeldungen definiert sind:
- [BUILTIN\Administrators]: Dieser Login verwendet die Windows-Authentifizierung. Er steht für die Administratoren des Windows-Rechners, auf dem sich der MSDE-Server befindet
- sa: Dieser Login verwendet die SQL-Authentifizierung. Standardmäßig ist dies der Administrator des MSDE-Servers. Beachten Sie, dass hier, wie bei der Installation des MSDE-DBMS konfiguriert, das Passwort [azerty] lautet.
- Klicken Sie mit der rechten Maustaste auf den Bereich „Anmeldungen“ und fügen Sie eine neue Anmeldung hinzu:
![]() |
- Es erscheint ein Formular, in dem wir die Eigenschaften des neuen Logins festlegen:

- Anmeldename: admarticles
- Passwort: mdparticles
- Sobald auf die Schaltfläche [OK] geklickt wird, zeigt MS Manager die SQL-Abfragen an, die ausgeführt werden:

Die oben gezeigte SQL-Sprache ist Transact-SQL, die von MSDE verwendete SQL-Sprache. Wir führen diesen Code aus, indem wir auf [OK] klicken
- Der neue Login wird zur Liste der Logins hinzugefügt:

- Klicken Sie im Fenster „Eigenschaften der Datenbank [dbarticles]“ mit der rechten Maustaste auf [users], um einen Benutzer mit Berechtigungen für die Datenbank [dbarticles] anzulegen:

- Daraufhin erscheint das folgende Fenster:

- In der Dropdown-Liste [Login] sehen Sie die Liste der vorhandenen Anmeldungen. Wählen Sie die Anmeldung [admarticles] aus.
- Geben Sie unter [Name] einen Benutzernamen ein. Einem Login können mehrere Benutzer zugeordnet werden. Außerdem muss in MSDE vor dem Anlegen eines Benutzers zunächst ein Login angelegt werden. Der Bereich [User] sieht nun wie folgt aus:

- Wenden wir uns nun dem Bereich [Member Of] zu, in dem wir die Berechtigungen unseres Benutzers festlegen können:

- Ich bin kein regelmäßiger MSDE-Benutzer und bin mir über die genaue Bedeutung der einzelnen Rollen im linken Bereich nicht sicher. Die Rolle [db_owner] ist verlockend (owner = Eigentümer). Wir werden sie daher für unseren Benutzer [admarticles] auswählen:

- Wir bestätigen unsere Auswahl, indem wir oben auf die Schaltfläche [Compile] klicken. Die ausgeführten SQL-Abfragen lauten wie folgt:

- Wir kompilieren sie, indem wir auf [OK] klicken. Wir haben nun einen Benutzer für die Datenbank [dbarticles]:

- Erstellen wir nun eine Tabelle. Klicken Sie mit der rechten Maustaste auf [Tables] und wählen Sie die Option [New Table]. Dadurch wird das Fenster zur Definition der Tabelleneigenschaften geöffnet:

- Beginnen wir damit, die Tabelle über das Eingabefeld [Tabellenname] [ARTICLES] zu nennen. Wechseln Sie anschließend zum Bereich [Felder]:

- Definieren Sie die folgenden Felder:

Solange wir unsere Definition nicht „kompiliert“ haben, wird die Tabelle nicht erstellt. Verwenden Sie die Schaltfläche [Compile] oben, um die Tabellendefinition abzuschließen. [MS SQL Manager] bereitet die SQL-Abfragen zur Erstellung der Tabelle vor und bittet um Bestätigung:

Interessanterweise zeigt [MS SQL Manager] die ausgeführten SQL-Abfragen an. So können Sie die Sprache Transact-SQL erlernen. Die Schaltfläche [Commit] bestätigt die aktuelle Transaktion, während [Rollback] sie rückgängig macht. Hier bestätigen wir sie durch Klicken auf [Commit]. Sobald dies geschehen ist, fügt [MS SQL Manager] die erstellte Tabelle zu unserer Datenbankstruktur hinzu:

Durch Doppelklicken auf die Tabelle können wir auf ihre Eigenschaften zugreifen:

Über den Bereich [Checks] können wir der Tabelle neue Integritätsbeschränkungen hinzufügen. Für die Tabelle [ARTICLES] erstellen wir die folgenden Beschränkungen:
- Die Felder [ID, PRICE, CURRENTSTOCK, MINIMUMSTOCK] müssen >=0 sein
- das Feld [NAME] darf nicht leer sein
Klicken Sie im Bereich [Checks] mit der rechten Maustaste auf den leeren Bereich, um eine neue Einschränkung hinzuzufügen [New check]:

- Das Bearbeitungsfenster für die Einschränkung sieht wie folgt aus:

Name: Name der Einschränkung
Tabelle: Tabelle, auf die die Einschränkung angewendet wird
Definition: Einschränkungsausdruck
Die Einschränkung wird über die Schaltfläche [Compile] oben kompiliert.
- Auch hier zeigt [MS SQL Manager] die ausgeführten SQL-Befehle an:

- Wir validieren sie über die Schaltfläche [Commit] (nicht abgebildet). Wenn wir zum Bereich [Checks] für die Tabelle [ARTICLES] zurückkehren, wird die neue Einschränkung angezeigt:

- Wir definieren die anderen Einschränkungen auf die gleiche Weise, um schließlich die folgende Liste zu erhalten:

Sobald dies erledigt ist, öffnen Sie das [DDL]-Fenster für die Tabelle [ARTICLES]:

In diesem Fenster wird der Transact-SQL-Code zum Erstellen der Tabelle mit allen Einschränkungen angezeigt. Sie können diesen Code in einem Skript speichern, um ihn später auszuführen:
CREATE TABLE [ARTICLES] (
[id] int NOT NULL,
[nom] varchar(20) COLLATE French_CI_AS NOT NULL,
[prix] float(53) NOT NULL,
[stockactuel] int NOT NULL,
[stockminimum] int NOT NULL,
CONSTRAINT [ARTICLES_uq] UNIQUE ([nom]),
PRIMARY KEY ([id]),
CONSTRAINT [ARTICLES_ck_id] CHECK ([id] > 0),
CONSTRAINT [ARTICLES_ck_nom] CHECK ([nom] <> ''),
CONSTRAINT [ARTICLES_ck_prix] CHECK ([prix] >= 0),
CONSTRAINT [ARTICLES_ck_stockactuel] CHECK ([stockactuel] >= 0),
CONSTRAINT [ARTICLES_ck_stockminimum] CHECK ([stockminimum] >= 0)
)
ON [PRIMARY]
GO
Nun ist es an der Zeit, einige Daten in die Tabelle [ARTICLES] einzugeben. Verwenden Sie dazu das [Data]-Fenster:

Mit der Schaltfläche [+] fügen Sie eine Zeile hinzu, mit der Schaltfläche [-] entfernen Sie eine. Die Daten werden durch einfache Eingabe in die Eingabefelder der einzelnen Zeilen der Tabelle eingegeben. Eine Zeile wird über die Schaltfläche [Post Edit] unten validiert:
![]()
Erstellen wir zwei Einträge:

Mit [MS SQL Manager] können Sie SQL-Abfragen über die Option [Extras/SQL-Editor anzeigen] oder die Taste [F12] ausführen. Dadurch erhalten Sie Zugriff auf einen erweiterten SQL-Abfrage-Editor, in dem Sie Abfragen ausführen können. Die Abfragen werden gespeichert, sodass Sie bereits ausgeführte Abfragen erneut aufrufen können. Hier ein Beispiel:

Führen Sie die SQL-Abfrage über die Schaltfläche [Ausführen] oben aus. Sie erhalten das folgende Ergebnis:

Wir beenden unsere Demonstrationen an dieser Stelle. Die Kombination aus [MS SQL Manager – MSDE] eignet sich, ähnlich wie die Kombination aus [IBExpert – Firebird], ebenfalls hervorragend zum Erlernen von Datenbanken.
3.15. Erstellen einer ODBC-Quelle [MSDE]
Der ODBC-Treiber für SQL Server ist auf Windows-Rechnern normalerweise standardmäßig installiert.
- Starten Sie das Tool [Start -> Einstellungen -> Konfigurationstools -> Verwaltung -> ODBC-Datenquellen]:

- Das folgende Fenster wird angezeigt:

- Klicken Sie auf [Hinzufügen], um eine neue Systemdatenquelle (im Bereich [System-DSN]) hinzuzufügen, die wir mit der im vorherigen Abschnitt erstellten MSDE-Datenbank verknüpfen werden:

- Zunächst müssen wir den zu verwendenden ODBC-Treiber angeben. Oben wählen wir den Treiber für [SQL Server] aus und klicken dann auf [Fertig stellen]. Der [SQL Server]-ODBC-Treiber-Assistent übernimmt dann die weitere Vorgehensweise:

- Wir füllen die verschiedenen Felder aus:
Der Name der ODBC-Quelle – kann beliebig sein | |
kann beliebig sein | |
Name des MSDE-Servers, der die ODBC-Quelldaten enthält |
- Klicken Sie auf [Weiter], um weitere Informationen anzugeben:

- Füllen Sie die verschiedenen Felder aus:
Geben Sie an, dass Sie die Verbindung zur ODBC-Datenquelle über einen auf dem MSDE-Server registrierten Benutzernamen herstellen möchten | |
Benutzername | |
Benutzerpasswort |
- Beachten Sie, dass wir hier zum ersten Mal den in einem vorherigen Abschnitt erstellten Benutzer (admarticles, mdparticles) verwenden. Klicken Sie erneut auf [Weiter], um zum nächsten Bildschirm zu gelangen:

- Wir füllen die verschiedenen Felder aus:
Wir wählen die Datenbank [dbarticles] als Standarddatenbank für den Benutzer [admarticles] aus |
- Klicken Sie auf [Weiter], um zum nächsten Bildschirm zu gelangen:

- Wir übernehmen die Standardwerte und klicken auf [Fertig stellen]. Es wird eine Zusammenfassung der Eigenschaften der zu erstellenden ODBC-Quelle angezeigt:

- Über die Schaltfläche [Datenquelle testen] können wir die Gültigkeit unserer Angaben überprüfen. Vergewissern Sie sich, dass MSDE läuft, und testen Sie dann die Verbindung:

- Wir können nun sicher sein, dass das Paar [admarticles, mdparticles] erkannt wird.
Für weitere Tests kann der Leser die in Abschnitt 3.10 beschriebene Vorgehensweise befolgen.
3.16. Verbindungszeichenfolge zu einer MSDE-Datenbank
- Starten Sie Visual Studio und öffnen Sie den Server-Explorer [Ansicht/Server-Explorer]:
![]() |
- Klicken Sie mit der rechten Maustaste auf [Datenverbindung] und wählen Sie die Option [Verbindung hinzufügen]:

- Geben Sie im Bereich [Anbieter] an, dass Sie eine SQL Server-Quelle verwenden möchten, und wechseln Sie dann zum Bereich [Verbindung]. Beachten Sie, dass wir hier keinen ODBC-Treiber verwenden.

Name des MSDE-Servers, mit dem Sie eine Verbindung herstellen | |
Benutzername für die Verbindung zur Datenbank | |
Das zu diesem Benutzernamen gehörende Passwort | |
Die Datenbank, mit der Sie arbeiten möchten |
Über die Schaltfläche [Verbindung testen] können Sie die Gültigkeit der Angaben überprüfen:

- Bestätigen Sie den Assistenten, indem Sie auf [OK] klicken. Interessanterweise fragt ein neues Fenster nach den Verbindungsdaten:

- Geben Sie diese erneut ein und klicken Sie auf [OK]. Die Datenquelle wird dann im Fenster [Server Explorer] in Visual Studio angezeigt:

- Durch Doppelklicken auf die Tabelle [ARTICLES] können Sie auf die Daten der Tabelle zugreifen:

- Wenn wir mit der rechten Maustaste auf den Link [portable1_tahe\msde140405.dbarticles.admarticles] im Bereich [Server Explorer] klicken und die Option [Eigenschaften] auswählen, können wir die Verbindungseigenschaften anzeigen:

- Die Eigenschaft [ConnectString] ist wichtig, da der .NET-Code sie benötigt, um eine Verbindung zur Datenbank herzustellen. Hier lautet die Verbindungszeichenfolge:
Provider=SQLOLEDB.1;Persist Security Info=False;User ID=admarticles;Initial Catalog=dbarticles;Data Source=portable1_tahe\msde140405;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=PORTABLE1_TAHE;Use Encryption for Data=False;Tag with column collation when possible=False
Viele Elemente dieser Verbindungszeichenfolge haben Standardwerte. Die folgende Verbindungszeichenfolge ist ausreichend:






























