Neue Funktionen in SQL Server Compact 4.0

In diesem Thema werden die neuen Funktionen in SQL Server Compact 4.0 und den vorherigen Versionen, also SQL Server Compact 3.5, SQL Server Compact 3.5 Service Pack 1 (SP1) und SQL Server Compact 3.5 Service Pack 2 (SP2), beschrieben.

Neue Funktionen in SQL Server Compact 4.0

MicrosoftSQL Server Compact 4.0 verfügt über eine Gruppe neuer Funktionen und ermöglicht ein Szenario, in dem SQL Server Compact 4.0 als Datenbank für ASP.NET-Webanwendungen und -Websites verwendet werden kann. Zu den Hauptfunktionen von SQL Server Compact 4.0 zählt Folgendes:

  1. Entwicklung von SQL Server Compact 4.0-Anwendungen mit WebMatrix und Visual Studio 2010 Service Pack 1

    • Die Editionen Premium, Ultimate und Professional von Visual Studio 2010 SP1 können zum Entwickeln von ASP.NET-Webanwendungen und Windows-Desktopanwendungen für SQL Server Compact 4.0 verwendet werden. Designer wie der Server-Explorer, Abfrage-Designer und Transact-SQL-Editor können zum Durchsuchen der Datenbank verwendet werden. Die Designer im Projektsystem für die ASP.NET-Webanwendungen können verwendet werden, um Steuerelemente auf den Webseiten an die Daten in SQL Server Compact zu binden.

      Außerdem unterstützt Microsoft Visual Web Developer 2010 SP1 Express auch SQL Server Compact 4.0 für die Entwicklung von ASP.NET-Webanwendungen. Visual Studio 2010 SP1 unterstützt zudem die Anwendungsentwicklung für SQL Server Compact 3.5 parallel mit SQL Server Compact 4.0.

    • Sie können WebMatrix zum Entwickeln von ASP.NET-Webanwendungen mit SQL Server Compact 4.0 und zum Verwalten der SQL Server Compact-Datenbank verwenden, einschließlich der Ausführung von Transact-SQL-Abfragen unter SQL Server Compact.

    • WebMatrix kann verwendet werden, um die Skripts für Daten und Schemas aus SQL Server Compact 4.0 für höhere Versionen von SQL Server anzupassen, und eine Website kann mit nur einem Klick in die anderen Versionen von SQL Server migriert werden.

  2. API-Verbesserungen

    • Integration in ADO.NET Entity Framework 4.0 (.NET Framework 4)

      SQL Server Compact 4.0 unterstützt das Code-First-Programmiermodell von ADO.NET Entity Framework. Außerdem werden Spalten, die über vom Server generierte Schlüssel wie identity oder rowguid verfügen, in SQL Server Compact 4.0 auch unterstützt, wenn ADO.NET Entity Framework 4 verwendet wird (dies ist die Version von ADO.NET Entity Framework, die in Verbindung mit .NET Framework 4 veröffentlicht wurde).

      Hinweis

      Die Version SQL Server Compact 4.0 funktioniert nur in Verbindung mit ADO.NET Entity Framework 4, das im Lieferumfang von .NET Framework 4 enthalten ist. Die Verwendung von SQL Server Compact 4.0 mit ADO.NET Entity Framework 3.5 SP1 (Teil von .NET Framework 3.5 SP1) führt zu einem Fehler.

    • Neue API für DbConnection.GetSchema

      SQL Server Compact 4.0 verfügt über die neue API System.Data.SqlServerCe.SqlCeConnection.GetSchema(), mit der Sie das Schema aus einer SQL Server Compact-Datenbankdatei abrufen können. Die API stellt auch die Unterstützung für System.Data.Common.DbConnection.GetSchema bereit.

    • Neue API für SqlCeConnectionStringBuilder

      Mit der neuen API System.Data.SqlServerCe.SqlCeConnectionStringBuilder() können Entwickler programmgesteuert die richtigen Verbindungszeichenfolgen für SQL Server Compact 4.0 erstellen und bestehende Verbindungszeichenfolgen analysieren und neu erstellen. Die API stellt auch die Unterstützung für System.Data.Common.DbConnectionStringBuilder bereit.

  3. Neue Transact-SQL-Syntax

    SQL Server Compact 4.0 unterstützt Transact-SQL-Abfragen, wenn eine Erweiterung um die neue Transact-SQL-Syntax für OFFSET & FETCH mit der Order BY-Klausel durchgeführt wird. Mithilfe von OFFSET-FETCH können Benutzer Pagingabfragen schreiben und für die Datenbankdatei ausführen. Weitere Informationen finden Sie unter ORDER BY-Klausel (SQL Server Compact).

  4. Verbesserungen für ASP.NET-Webanwendungen und -Websites

    • Unterstützung für ASP.NET

      SQL Server Compact 4.0 unterstützt ASP.NET, ohne dass eine spezielle Konfiguration erforderlich ist. Das Flag SQLServerCompactEditionUnderWebHosting ist in SQL Server Compact 4.0 nicht mehr erforderlich und wurde entfernt.

    • Reduzierung des virtuellen Speichers

      Die Nutzung des virtuellen Speichers für jede Verbindung von SQL Server Compact wurde in SQL Server Compact 4.0 reduziert. Der sichtbare Unterschied besteht darin, dass der Ausnahmefehler Nicht genügend virtueller Speicher auftritt, wenn eine Anwendung versucht, in SQL Server Compact 3.5 SP2 40 bis 50 Verbindungen gleichzeitig zu öffnen. Mithilfe von SQL Server Compact 4.0 kann die Anwendung jedoch problemlos so viele Verbindungen öffnen, wie für die Datenbankdatei erforderlich sind. Dies gilt bis zur Höchstzahl von 256 Verbindungen, ohne dass dabei zu wenig virtueller Speicher vorhanden ist.

    • Mittlere Vertrauenswürdigkeit

      Die Hauptanforderung von ASP.NET-Anwendungen besteht darin, in einer Umgebung mit mittlerer (partieller) Vertrauenswürdigkeit ausgeführt zu werden. Dies wird in SQL Server Compact 4.0 unterstützt.

  5. Höhere Zuverlässigkeit und Sicherheit und einfache Bereitstellung

    • Höhere Zuverlässigkeit

      SQL Server Compact 4.0 wurde für die Zusammenarbeit mit ASP.NET-Webanwendungen getestet und zertifiziert und kann die Auslastungen von Einsteiger-Websites verarbeiten. SQL Server Compact 4.0 bietet eine hervorragende Leistung für Szenarios, in denen mehrere Verbindungen gleichzeitig aktiv sind und mehrere Anfragen für die Datenbank ausgeführt werden.

    • Update der Verschlüsselungsalgorithmen

      SQL Server Compact 4.0 unterstützt die SHA 2-Verschlüsselungsalgorithmen, die für die verschlüsselten SQL Server Compact-Datenbankdateien eine höhere Sicherheitsebene bedeuten.

      Tipp

      Die Algorithmen, die in älteren Versionen von SQL Server Compact unterstützt wurden, werden in SQL Server Compact 4.0 nur zum Öffnen der Datenbankdatei für das Update auf SQL Server Compact 4.0 unterstützt. Wenn Sie eine SQL Server Compact 3.5-Datenbankdatei mit SQL Server Compact 4.0 öffnen, muss die SQL Server Compact 3.5-Datenbankdatei also mit der API System.Data.SqlServerCe.SqlCeEngine.Upgrade() auf SQL Server Compact 4.0 aktualisiert werden.

    • Verbesserungen beim Setup

      Das Setup und die Installation von SQL Server Compact 4.0 wurde verbessert, um sicherzustellen, dass die x86- und x64-Komponenten von SQL Server Compact auf einem 64-Bit-Computer richtig installiert werden. So wird erreicht, dass SQL Server Compact 4.0 auf dem 64-Bit-Computer sowohl den WOW64-Modus als auch systemeigene 64-Bit-Anwendungen ohne Probleme unterstützt.

      • In SQL Server Compact 4.0 wird die x86-EXE-Datei auf einem 32-Bit-Computer installiert, und das x64-MSI-Programm wird nur auf einem 64-Bit-Computer installiert. Das x64-MSI-Programm installiert auf dem 64-Bit-Computer sowohl die 32-Bit- als auch die 64-Bit-Komponenten für SQL Server Compact. Aufgrund dieser Änderung beim Installationsverhalten ist es nicht mehr erforderlich, das x86-MSI-Programm auf dem 64-Bit-Computer zu installieren.

      • Alle Binärdateien (32 Bit und 64 Bit) für die private Bereitstellung von SQL Server Compact 4.0 sind im Ordner %Program Files%\Microsoft SQL Server Compact Edition\v4.0\Private und %Program Files (x86)%\Microsoft SQL Server Compact Edition\v4.0\Private verfügbar.

Neue Funktionen in SQL Server Compact 3.5 Service Pack 2

SQL Server Compact 3.5 Service Pack 2 (SP2) ist Bestandteil von SQL Server 2008 R2 und Visual Studio 2010. SQL Server Compact bietet ab Version SQL Server Compact 3.5 SP2 die folgenden neuen Funktionen:

  • Unterstützung für den Transact-SQL-Editor in Visual Studio 2010. Der Transact-SQL-Editor kann jetzt zum Ausführen von Transact-SQL-Freitextabfragen für SQL Server Compact-Datenbanken verwendet werden. Der Transact-SQL-Editor ermöglicht auch das Anzeigen und Speichern ausführlicher geschätzter und tatsächlicher Abfrageshowpläne für SQL Server Compact-Datenbanken. Bisher konnten die vom Transact-SQL-Editor bereitgestellten Funktionen nur über SQL Server Management Studio genutzt werden. Weitere Informationen finden Sie unter Transact-SQL-Editor in Visual Studio.

  • Unterstützung der Änderungsnachverfolgung für SQL Server Compact-Datenbanken. Dem System.Data.SqlServerCe-Namespace wurden neue Klassen und Elemente hinzugefügt, um die Änderungsnachverfolgung für Datenbanktabellen auf Zeilenebene zu unterstützen. Wenn die Nachverfolgung für eine Tabelle aktiviert ist, speichert die Nachverfolgungsinfrastruktur Informationen zu den in der Tabelle ausgeführten Einfüge-, Lösch- und Updatevorgängen. Diese Informationen werden sowohl in den Spalten gespeichert, die der nachverfolgten Tabelle hinzugefügt wurden, als auch in den von der Nachverfolgungsinfrastruktur verwalteten Systemtabellen. Mithilfe dieser neuen Klassen können Sie die Änderungsnachverfolgung für eine Tabelle konfigurieren, aktivieren und deaktivieren sowie auf die für eine Tabelle verwalteten Nachverfolgungsdaten zugreifen. Mithilfe der Änderungsnachverfolgung können Funktionen in unterschiedlichen Szenarien bereitgestellt werden. Sie können z. B. benutzerdefinierte Implementierungen von Client-zu-Server- oder Client-zu-Client-Synchronisierungen für OCS (Occasionally Connected Systems, gelegentlich verbundene Systeme) bereitstellen, oder Sie können mithilfe der Änderungsnachverfolgung eine benutzerdefinierte Listeneranwendung implementieren. Weitere Informationen finden Sie unter Erstellen von Anwendungen, die die Änderungsnachverfolgung verwenden (SQL Server Compact).

  • Neue Unterstützung und Verzeichnisstruktur für die Verwaltung von Assemblyversionen, durch die SQL Server Compact-Anwendungen, die die private Bereitstellung verwenden, Hotfixes, Sicherheitspatches und wichtige Updates empfangen können. Weitere Informationen finden Sie unter Private Bereitstellung oder zentrale Bereitstellung (SQL Server Compact).

  • Neue Unterstützung für die 64-Bit-ClickOnce-Bereitstellung. Weitere Informationen finden Sie unter Bereitstellen von Desktopanwendungen.

  • SQL Server Compact unterstützt Windows 7 und Windows Server 2008 R2. Eine Liste aller unterstützten Windows-Versionen finden Sie unter Hardware- und Softwareanforderungen.

Neue Funktionen in SQL Server Compact 3.5 Service Pack 1

SQL Server Compact 3.5 Service Pack 1 (SP1) ist in SQL Server 2008 und Visual Studio 2008 SP1 enthalten. Seit der Version SQL Server Compact 3.5 SP1 bietet SQL Server Compact die folgenden neuen Funktionen:

  • SQL Server Compact unterstützt das ADO.NETEntity Framework. Das Entity Framework ermöglicht Ihnen die Arbeit mit Daten in Form von domänenspezifischen Objekten und Eigenschaften, wie Kunden und Kundenadressen, ohne dass Sie sich dabei mit den zugrunde liegenden Datenbanktabellen und -spalten beschäftigen müssen, in denen die Daten gespeichert sind.

  • Die Unterstützung von ADO.NETEntity Framework ermöglicht Ihnen die Erstellung von flexiblen, stark typisierten Abfragen für den Entity Framework-Objektkontext mithilfe von LINQ-Ausdrücken und den LINQ-Standardabfrageoperatoren direkt aus der Entwicklungsumgebung.

  • SQL Server Compact unterstützt auf Datenbankebene Sortierungen, bei denen die Groß- und Kleinschreibung beachtet wird. Weitere Informationen finden Sie unter Arbeiten mit Sortierungen (SQL Server Compact).

  • Sie können SQL Server Compact-Datenbanken, die auf einem intelligenten Gerät oder einem Desktopcomputer gespeichert sind, über SQL Server Management Studio (SSMS) in SQL Server 2008 zugreifen.

  • SQL Server Compact bietet Unterstützung für das Replizieren neuer Datentypen in SQL Server 2008 wie date, time, datetime2, datetimeoffset, geography und geometry. Die neuen Datentypen in SQL Server 2008 werden nchar, nvarchar, image usw. zugeordnet. Weitere Informationen über Datentypen in SQL Server 2008 finden Sie in der Onlinedokumentation von SQL Server 2008 unter Datentypen (Datenbankmodul).

  • SQL Server Compact kann in einer 64-Bit-Umgebung systemeigen ausgeführt werden. Bei den betreffenden MSI-Dateien handelt es sich um die SQL Server Compact 64-Bit-Laufzeit (SSCERuntime-ENU.msi) und die Servertools von SQL Server Compact 64-Bit (SSCEServerTools-ENU.msi). Die Unterstützung von 32-Bit-MSIs wurde nicht geändert. Entwickler, die für ihre Anwendungen eine ClickOnce-Bereitstellung verwenden, müssen für die 32-Bit- und die 64-Bit-Version URLs zum Herunterladen angeben. Weitere Informationen finden Sie unter Verwaltung von 64-Bit-Datenbankanwendungen.

  • SQL Server Compact unterstützt die Datenreplikation mit SQL Server 2000, SQL Server 2005 und SQL Server 2008 mit Synchronisierungsdienste für ADO.NET. Synchronisierungsdienste für ADO.NET ist für Desktopcomputer und mobile Geräte verfügbar.

  • SQL Server Compact unterstützt die Datenreplikation mit SQL Server 2005 und SQL Server 2008 mithilfe von Mergereplikation und Remotedatenzugriff (RDA).

  • SQL Server Compact bietet eine verbesserte Versionskompatibilität für die Mergereplikation zwischen SQL Server Compact und SQL Server.

  • Die Servertools zur Konfiguration von Mergereplikation und Remotedatenzugriff mit SQL Server Compact 3.5 SP1 können vom Microsoft Download Center heruntergeladen werden. Die Servertools von SQL Server Compact 3.5 SP1 können nicht gleichzeitig mit früheren Versionen der Servertools auf dem Computer installiert werden, der als IIS-Server fungiert. Mit den SQL Server Compact 3.5 SP1-Servertools können Daten zwischen SQL Server Compact 3.5 und SQL Server 2005 oder SQL Server 2008 repliziert werden. SQL Server Compact 3.5 SP1-Servertools unterstützen auch die Datenreplikation zwischen SQL Server 2005 Compact Edition oder SQL Server 2005 Mobile Edition und SQL Server 2005 oder SQL Server 2008.

  • SQL Server Compact unterstützt Windows Server 2008. Eine Liste aller unterstützten Windows-Versionen finden Sie unter Hardware- und Softwareanforderungen.

Neue Funktionen in SQL Server Compact 3.5

SQL Server Compact 3.5 wurde mit Visual Studio 2008 veröffentlicht. Seit der Version SQL Server Compact 3.5 bietet SQL Server Compact die folgenden neuen Funktionen:

  • SQL Server Compact implementiert den timestamp (rowversion)-Datentyp. rowversion ist ein Datentyp, der automatisch generierte binäre Zahlen verfügbar macht, die in einer Datenbank immer eindeutig sind. Er wird normalerweise als Mechanismus zum Erstellen eines Versionsstempels für Tabellenzeilen verwendet.

  • SQL Server Compact unterstützt den lokalen Transaktionsbereich auf Desktopcomputern.

  • Der SQL Server Compact Tabellen-Designer in Visual Studio 2008 wurde verbessert und bietet eine Benutzeroberfläche zum Erstellen von Primär- und Fremdschlüsselbeziehungen zwischen Tabellen.

  • Die SQL Server Compact-Unterstützung für Transact-SQL-Anweisungen wurde wie folgt erweitert:

    • Geschachtelte Abfragen in FROM-Klauseln

    • CROSS APPLY und OUTER APPLY

    • CAST

    • TOP

    • SET IDENTITY INSERT

  • SQL Server Compact unterstützt Unicode-Zeichen jedes beliebigen Gebietsschemas, einschließlich chinesischer GB 18030-Zeichen.

  • SQL Server Compact unterstützt das Entwickeln von Desktopanwendungen, die Visual C# 2008 Express Edition und Visual Basic 2008 Express Edition verwenden.

  • SQL Server Compact Version 3.5 unterstützt die gleichzeitige Installation mit der früheren Version (3.1) auf Desktopcomputern. Weitere Informationen über die Interaktion mit früheren Versionen finden Sie unter Aktualisieren von früheren Versionen (SQL Server Compact).

  • Dank der abwärtskompatiblen Verschlüsselungsmodi unterstützt SQL Server Compact sowohl neue, sichere Verschlüsselungsalgorithmen als auch Verschlüsselungsalgorithmen älterer Betriebssysteme. Eine vollständige Liste abwärtskompatibler Verschlüsselungsmodi finden Sie unter Aktualisieren von früheren Versionen (SQL Server Compact).

  • SQL Server Compact unterstützt LINQ to SQL. LINQ to SQL ist eine Komponente des LINQ-Projekts. Diese bietet eine Laufzeitinfrastruktur zum Verwalten relationaler Daten als Objekte, ohne dass auf die Möglichkeit von Abfragen verzichtet werden muss. Dabei werden sprachintegrierte Abfragen für die Ausführung durch SQL Server Compact in Transact-SQL übersetzt und dann die in tabellarischem Format vorliegenden Ergebnisse wieder in die vom Anwendungsentwickler definierten Objekte zurückübersetzt. In LINQ to SQL gibt es keine Designerunterstützung für SQL Server Compact. Für SQL Server Compact muss das Hilfsprogramm SqlMetal.exe verwendet werden. Das Befehlszeilentool SqlMetal generiert Code und Zuordnungen für die LINQ to SQL-Komponente von .NET Framework. Standardmäßig befindet sich die Datei SQLMetal unter %ProgramFiles%\Microsoft SDKs\Windows\vn.nn\bin. Weitere Informationen finden Sie unter Codegenerierung in LINQ to SQL. SqlMetal kann für Folgendes verwendet werden:

    • Generieren von Quellcode und Zuordnungsattributen oder einer Zuordnungsdatei ausgehend von einer Datenbank.

    • Generieren einer DBML-Datei (Intermediate Database Markup Language) ausgehend von einer Datenbank für die Anpassung.

    • Generieren von Code und Zuordnungsattributen oder einer Zuordnungsdatei ausgehend von einer DBML-Datei.

Weitere neue Funktionen

SQL Server Compact 4.0 stellt die folgenden Komponenten bereit: SSCEVSTools-ENU.msi, SSCEWebTools-ENU.msi, SSCERuntime_x86-ENU.exe und SSCERuntime_x64-ENU.exe.

  • Microsoft Visual Studio 2010 SP1-Tools für SQL Server Compact 4.0 (SSCEVSTools-ENU.msi): Diese Datei installiert die SQL Server Compact-Entwurfszeitkomponenten, die in Visual Studio 2010 SP1 für die Unterstützung des Designers benötigt werden. Zu den Entwurfszeitkomponenten zählen die Benutzeroberfläche, Dialogfelder und die Entwurfszeitumgebung, die zum Schreiben von Anwendungen in SQL Server Compact verwendet werden. Die SQL Server Compact-Entwurfszeitkomponenten werden im folgenden Verzeichnis installiert: %ProgramFiles%\Microsoft Visual Studio 10\Common7\IDE\. Beispiele werden unter %ProgramFiles%\Microsoft SQL Server Compact Edition\v4.0\Samples installiert. Diese Komponenten sind an Visual Studio gebunden und können nicht allein verwendet werden. SQL Server Compact-Beispiele und SQL Server Compact-Headerdateien (für die systemeigene Entwicklung) werden ebenfalls durch das Ausführen dieser MSI-Datei installiert.

  • SQL Server Compact 4.0 Runtime (SSCERuntime_x86-ENU.exe & SSCERuntime_x64-ENU.exe): Durch das Ausführen dieser Datei werden die SQL Server Compact-Laufzeitkomponenten für Desktopcomputer in einem zentralen Ordner installiert: %ProgramFiles%\Microsoft SQL Server Compact Edition\v4.0. Die SQL Server Compact-Laufzeitkomponenten für Desktopcomputer sind erforderlich, um Anwendungen in Visual Studio zu entwickeln und SQL Server Compact-basierte Anwendungen auf dem Desktop auszuführen. SSCERuntime-ENU.msi ist auch zum Herunterladen im Internet verfügbar.

  • SQL Server Compact 4.0-Webtools (SSCEWebTools-ENU.msi): Diese Datei installiert die Skripterstellungskomponente für die Datenbank im globalen Assemblycache. Auf diese Weise wird die Datenbankmigrationsfunktion für höhere SQL Server-SKUs für WebMatrix bereitgestellt. Das MSI-Programm kann nur mit WebMatrix verwendet werden.