SQL Server Compact und LINQ to SQL

SQL Server Compact ist die Standarddatenbank, die mit Visual Studio installiert wird. Weitere Informationen finden Sie unter Verwenden von SQL Server Compact (Visual Studio).

In diesem Thema werden die Hauptunterschiede bei Verwendung, Konfiguration, Funktionsgruppen und des Umfangs der LINQ to SQL-Unterstützung erläutert.

Eigenschaften von SQL Server Compact im Verhältnis zu LINQ to SQL

SQL Server Compact wird standardmäßig für alle Visual Studio-Editionen installiert und steht daher auf dem Entwicklungscomputer zur Verwendung mit LINQ to SQL zur Verfügung. Die Bereitstellung einer Anwendung, die SQL Server Compact und LINQ to SQL verwendet, unterscheidet sich jedoch von der für eine SQL Server-Anwendung. SQL Server Compact ist nicht Bestandteil von .NET Framework und muss daher in die Anwendung integriert werden oder separat von der Microsoft-Website heruntergeladen werden.

Beachten Sie die folgenden Eigenschaften:

  • SQL Server Compact wird als DLL verpackt, die für Datenbankdateien (Erweiterung .sdf) direkt verwendet werden kann.

  • SQL Server Compact wird in demselben Prozess wie die Clientanwendung ausgeführt. Die Effizienz der Kommunikation mit SQL Server Compact kann deshalb bedeutend höher sein als die mit SQL Server. Andererseits erfordert SQL Server Compact Interoperabilität zwischen verwaltetem und nicht verwaltetem Code (was mit den entsprechenden Kosten verbunden ist).

  • Die SQL Server Compact-DLL weist eine geringe Größe auf. Diese Funktion verringert die Gesamtgröße der Anwendung.

  • Die LINQ to SQL-Runtimeund das SQLMetal-Befehlszeilentool unterstützen SQL Server Compact.

  • Der objektrelationale Designer unterstützt SQL Server Compact nicht.

Funktionsgruppe

Die SQL Server Compact-Funktionsgruppe ist erheblich einfacher als die Funktionsgruppe von SQL Server. Dies kann LINQ to SQL-Anwendungen wie folgt beeinflussen:

  • SQL Server Compact unterstützt keine gespeicherten Prozeduren oder Ansichten.

  • SQL Server Compact unterstützt nur eine Teilmenge von Datentypen und SQL-Funktionen.

  • SQL Server Compact unterstützt nur eine Teilmenge von SQL-Konstrukten.

  • SQL Server Compact bietet nur einen minimalen Optimierer. Es ist möglich, dass es bei einigen Abfragen zu Zeitüberschreitungen kommt.

  • SQL Server Compact unterstützt keine teilweise Vertrauenswürdigkeit.

Weitere Informationen