Beschreibung des SQL Server Compact 3,5 Service Pack 1


EINFÜHRUNG


In diesem Artikel wird Microsoft SQL Server Compact 3,5 Service Pack 1 (SP1) beschrieben. SQL Server Compact 3,5 SP1 aktualisiert die Veröffentlichungsversion von SQL Server Compact 3,5. Dieser Artikel enthält die folgenden Elemente:

Weitere Informationen


Anmerkungen zu dieser Version

Versionsverlauf

Die folgende Liste enthält die verschiedenen Versionen von Microsoft SQL Server Compact:
  • Version 3,5 SP1 Microsoft SQL Server Compact 3,5 Service Pack 1 (SP1) Dieses Service Pack wurde zusammen mit Microsoft Visual Studio 2008 Service Pack 1 (SP1) und Microsoft SQL Server 2008 veröffentlicht.
  • Version 3,5 Microsoft SQL Server Compact 3,5. Diese Version wurde zusammen mit Microsoft Visual Studio 2008 veröffentlicht.
  • Version 3,1 Microsoft SQL Server 2005 Compact Edition. Diese Version wurde zur gleichen Zeit für die Integration mit Microsoft Visual Studio 2005 Service Pack 1 (SP1) und mit Microsoft SQL Server 2005 Service Pack 2 (SP2) veröffentlicht.
  • Version 3,0 Microsoft SQL Server 2005 Mobile Edition (SQL Server Mobile) Diese Version wurde zusammen mit Microsoft Visual Studio 2005 und Microsoft SQL Server 2005 veröffentlicht.
  • Version 2,0 Microsoft SQL Server 2000 Windows CE Edition 2,0 (SQL Server CE 2,0). Diese Version wurde zusammen mit Microsoft Visual Studio 2003 veröffentlicht.

Neue Funktionen

SQL Server Compact 3,5 SP1 umfasst die folgenden neuen Features:
  • Unterstützung für das ADO.net-Entitäts Framework. Mit dem Entity Framework können Sie mit Daten in Form von domänenspezifischen Objekten und Eigenschaften wie Kunden und Kundenadressen arbeiten, ohne sich um die zugrunde liegenden Datenbanktabellen und-Spalten kümmern zu müssen, in denen diese Daten gespeichert sind. Hinweis Die Unterstützung für das ADO.net-Entitätsframework ermöglicht Ihnen, flexible, stark typisierte Abfragen für den Entity Framework-Objektkontext mithilfe von LINQ-Ausdrücken und den LINQ-Standardabfrageoperatoren direkt aus der Entwicklungsumgebung zu erstellen.
  • Unterstützung für Sortierungen mit Groß-/Kleinschreibung auf Datenbankebene
  • Verwaltung von SQL Server Compact-Datenbanken, die auf einem Windows Mobile-Gerät oder auf einem Desktopcomputer unter Verwendung von SQL Server Management Studio (SSMS) in SQL Server 2008 gespeichert sind.
  • Replikation der neuen Datentypen in SQL Server 2008 Zu diesen Datentypen gehören Date, time, datetime2, DateTimeOffset, geographyund Geometry. Die neuen Datentypen in SQL Server 2008 werden NCHAR, nvarchar, Imageusw. zugeordnet.
  • Native 64-Bit-Unterstützung. Die 32-Bit-Unterstützung wurde nicht geändert.
  • Unterstützung für die Datenreplikation mit SQL Server 2008, SQL Server 2005 und SQL Server 2000 mithilfe von Microsoft Synchronization Services für ADO.NET 1,0 Service Pack 1 (SP1). Microsoft Synchronization Services für ADO.NET 1,0 SP1 steht sowohl für Desktop-als auch für mobile Geräte zur Verfügung.
  • Unterstützung für die Datenreplikation mit SQL Server 2008 und SQL Server 2005 mithilfe von Mergereplikation und Remote Datenzugriff (Remote Data Access, RDA).
  • Verbesserte Versionskompatibilität zwischen SQL Server Compact und SQL Server für die Mergereplikation.
  • SQL Server Compact 3,5 SP1-Server Tools
    • Kann Daten zwischen SQL Server Compact 3,5 und SQL Server 2008 oder SQL Server 2005 replizieren.
    • Unterstützt die Datenreplikation zwischen SQL Server 2005 Compact Edition oder SQL Server 2005 Mobile Edition und SQL Server 2008 oder SQL Server 2005.
    • Sie können nicht nebeneinander mit früheren Versionen von Server Tools auf dem Computer installiert werden, der als der Server fungiert, auf dem Internet Informationsdienste (IIS) ausgeführt wird.
  • Unterstützt Windows Server 2008.
Zusätzlich zu den hier aufgelisteten neuen Features enthält SQL Server Compact 3,5 SP1 die folgenden neuen Features, die in SQL Server Compact 3,5 enthalten waren:
  • Implementiert den Zeitstempel (rowversion)-Datentyp. Rowversion ist ein Datentyp, der automatisch generierte binäre Zahlen verfügbar macht, die in einer Datenbank garantiert eindeutig sind. In der Regel wird dieser Datentyp als Mechanismus für das Versions prägen von Tabellenzeilen verwendet.
  • Unterstützt den lokalen Transaktionsbereich auf Desktopcomputern.
  • Fügt dem Tabellen-Designer in Visual Studio 2008 Verbesserungen hinzu, um eine Benutzeroberfläche zum Erstellen von Primärschlüssel-und Fremdschlüsselbeziehungen zwischen Tabellen bereitzustellen.
  • Erweitert die Unterstützung für Transact-SQL-Anweisungen wie folgt:
    • Geschachtelte Abfrage in from-Klausel
    • CROSS APPLY und OUTER APPLY
    • Guss
    • Nach oben
    • Identitäts Einfügung einrichten
  • Unterstützt Unicode-Zeichen eines beliebigen Gebietsschemas. Dies umfasst chinesische GB 18030 Zeichen.
  • Unterstützt die Entwicklung von Desktopanwendungen, die Microsoft Visual C# 2008 Express Edition und Microsoft Visual Basic 2008 Express Edition verwenden.
  • Unterstützt Side-by-Side mit SQL Server 2005 Compact Edition auf Desktopcomputern.
  • Unterstützt abwärtskompatible Verschlüsselungsmodi für ältere Betriebssysteme mit älteren Verschlüsselungsalgorithmen und fügt eine neuere, bessere Verschlüsselung hinzu.
  • Unterstützt LINQ to SQL. LINQ to SQL ist eine Komponente des LINQ-Projekts. LINQ to SQL bietet eine Laufzeitinfrastruktur für die Verwaltung von relationalen Daten als Objekte, ohne dass die Abfrage Fähigkeit aufgegeben wird. Es übersetzt sprachintegrierte Abfragen in Transact-SQL zur Ausführung durch SQL Server Compact und übersetzt die tabellarischen Ergebnisse dann wieder in die Objekte, wie Sie vom Softwareentwickler definiert wurden. In LINQ to SQL gibt es keine Designerunterstützung für SQL Server Compact. Das Dienstprogramm SqlMetal. exe muss für SQL Server Compact verwendet werden. Das SQLMetal-Befehlszeilentool generiert Code und die Zuordnung für die LINQ to SQL-Komponente des Microsoft .NET Framework. Standardmäßig befindet sich die Datei SQLMetal. exe im folgenden Ordner:
    %ProgramFiles%\Microsoft SDKs\Windows\vn.nn\Bin
    Das SQLMetal-Befehlszeilentool kann für Folgendes verwendet werden:
    • Aus einer Datenbank, um Quellcode und Zuordnungsattribute oder eine Zuordnungsdatei zu generieren
    • Aus einer Datenbank, um eine DBML-Datei (Intermediate Database Markup Language) für die Anpassung zu generieren
    • Aus einer DBML-Datei zum Generieren von Code-und Zuordnungs Attributen oder einer Zuordnungsdatei

Veröffentlichte Sprachen

SQL Server Compact 3,5 SP1 für alle Pakete wird in den folgenden Sprachen veröffentlicht:
  • Englisch
  • Brasilianisches Portugiesisch
  • Chinesisch (Vereinfacht)
  • Chinesisch (Traditionell)
  • Französisch
  • Deutsch
  • Italienisch
  • Japanisch
  • Koreanisch
  • Russisch
  • Spanisch

Unterstützte Plattformen

SQL Server Compact 3,5 SP1 kann auf den folgenden Plattformen installiert werden:
Windows-Desktopcomputer
  • Windows Server 2008 Standard Server
  • Windows Server 2008 Standard Server (ohne Hyper-V)
  • Windows Server 2008 Enterprise
  • Windows Server 2008 Enterprise (ohne Hyper-V)
  • Windows Server 2008-Rechenzentrum
  • Windows Server 2008-Rechenzentrum (ohne Hyper-V)
  • Windows Server 2008 Web Edition
  • Windows Server 2008 Standard Server x64
  • Windows Server 2008 Standard Server x64 (ohne Hyper-V)
  • Windows Server 2008 Enterprise x64
  • Windows Server 2008 Enterprise x64 (ohne Hyper-V)
  • Windows Server 2008 Rechenzentrum x64
  • Windows Server 2008 Rechenzentrum x64 (ohne Hyper-V)
  • Windows Server 2008 Web Edition x64
  • Windows Vista Home Basic SP1
  • Windows Vista Home Premium SP1
  • Windows Vista Business SP1
  • Windows Vista Enterprise SP1
  • Windows Vista Ultimate SP1
  • Windows Vista Starter SP1
  • Windows Vista Home Basic x64 SP1
  • Windows Vista Home Premium x64 SP1
  • Windows Vista Business x64 SP1
  • Windows Vista Enterprise x64 SP1
  • Windows Vista Ultimate x64 SP1
  • Windows XP Professional SP3
  • Windows XP Home Edition SP3
  • Windows XP Media Center Edition 2005
  • Windows XP Media Center Edition 2004 SP3
  • Windows XP Tablet PC Edition SP3
  • Windows XP Embedded SP3
  • Windows XP Professional x64 SP3
  • Windows Embedded für Point of Service SP3
  • Windows Server 2003, Standard Edition SP2
  • Windows Server 2003, Enterprise Edition SP2
  • Windows Server 2003, Datacenter Edition SP2
  • Windows Server 2003 R2, Standard Edition
  • Windows Server 2003 R2, Enterprise Edition
  • Windows Server 2003 R2, Datacenter Edition
  • Windows Server 2003 x64, Standard Edition
  • Windows Server 2003 x64, Enterprise x64 Edition
  • Windows Server 2003 x64, Datacenter Edition
  • Windows Server 2003 R2 x64, Standard Edition
  • Windows Server 2003 R2 x64, Enterprise Edition
  • Windows Server 2003 R2 x64, Datacenter Edition
Windows Mobile-Geräte
  • Windows CE 6,0
  • Windows CE 5,0
  • Windows CE 4,2
  • Windows Mobile 6,0
  • Windows Mobile 5,0
  • Windows Mobile 2003 für Pocket PC

Zusätzliche Komponenten

Die SQL Server Compact 3,5 SP1-Windows Installer-Dateien (MSI) werden in diesem Abschnitt beschrieben. Einige dieser Dateien stehen im Microsoft Download Center zum Download zur Verfügung. Wenn Sie die SQL Server Compact 3,5 SP1-Komponenten herunterladen möchten, besuchen Sie die folgende Microsoft-Website:In der folgenden Liste sind die zusätzlichen MSI-Dateien für SQL Server Compact 3,5 SP1 beschrieben.Hinweis In dieser Liste stellt die Platzhalter Sprache die Produktsprache von SQL Server Compact dar. Für Englisch stellt der Platzhalter beispielsweise ENUdar, und für Japanisch stellt der Platzhalter JPNdar.
  • SQL Server Compact 3,5 SP1-Entwurfs Tools (SSCEVSTools-Language. msi) Diese Datei installiert die SQL Server Compact-Entwurfszeitkomponenten zusammen mit Visual Studio 2008 SP1. Die Entwurfszeitkomponenten sind die Benutzeroberfläche, die Dialogfelder und die Entwurfszeitumgebung. Diese werden verwendet, um Anwendungen für SQL Server Compact zu schreiben. Die SQL Server Compact-Entwurfszeitkomponenten werden im folgenden Ordner installiert:
    %ProgramFiles%\Microsoft Visual Studio 9 \ Common7\IDE
    Beispieldateien werden im folgenden Ordner installiert:
    %ProgramFiles%\Microsoft SQL Server Compact Edition\v3.5\Samples
    Diese Komponenten sind mit Visual Studio verbunden und können nicht unabhängig von Visual Studio ausgeliefert werden. SQL Server Compact-Beispiele und SQL Server Compact-Headerdateien (für die systemeigene Entwicklung) werden ebenfalls von dieser Datei installiert.
  • SQL Server Compact 3,5 SP1 (SSCERuntime-Language. msi) Diese Datei installiert die Komponenten der SQL Server Compact-Laufzeit für Desktopcomputer. Diese Komponenten werden im folgenden zentralen Ordner installiert:
    %ProgramFiles%\Microsoft SQL Server Compact Edition\v3.5
    Diese Komponenten sind für die Entwicklung von Anwendungen in Visual Studio und für die Ausführung von SQL Server Compact-basierten Anwendungen auf dem Desktop erforderlich. SSCERuntime-Language. msi steht auch im Web zum Download zur Verfügung. Diese Datei installiert auch die Microsoft Synchronization Services für ADO.NET 1,0 SP1-Komponenten. Synchronisierungsdienste-Komponenten werden im folgenden Ordner installiert:
    %ProgramFiles%\Microsoft-Synchronisierungs Services\ADO.NET\v1.0
    Weitere Informationen finden Sie unter Microsoft Synchronization Services für ADO.net Books Online. Diese Ressource steht auf der Microsoft SQL Server-Website zur Verfügung.
  • SQL Server Compact 3,5 SP1 für Geräte (SSCEDeviceRuntime-Language. msi) Diese Datei installiert die Runtime-Komponenten der SQL Server Compact-Geräte im folgenden Ordner:
    %ProgramFiles%\Microsoft SQL Server Compact Edition\v3.5\Devices
    Die Laufzeitkomponenten sind für die Entwicklung von Geräte basierten Windows Mobile-und Windows CE-Anwendungen in Visual Studio und für die Bereitstellung der Anwendungen auf mobilen Geräten erforderlich. SSCEDeviceRuntime-Language. msi steht auch auf der Microsoft SQL Server-Website zum Download zur Verfügung.
  • SQL Server Compact 3,5 SP1-Server Tools (SSCEServerTools-Language. msi) Diese Datei installiert die SQL Server Compact Server-Tools im folgenden Ordner:
    %ProgramFiles%\Microsoft SQL Server Compact Edition\v3.5\sync\SQL
    Die Komponenten sind erforderlich, um die SQL Server Compact-Datenbank auf einem mobilen Gerät mit einer SQL Server 2008-oder SQL Server 2005-Datenbank zu verbinden. SSCEServerTools-Language. msi steht auch auf der Microsoft SQL Server-Website zum Download zur Verfügung.
  • SQL Server Compact 3,5 SP1-Abfrage Tools (SSCESqlWbTools-Language. msi) Diese Datei installiert die SQL Server Compact Query-Tool-Dateien im folgenden Ordner:
    %ProgramFiles%\Microsoft SQL Server Compact Edition\v3.5\Tools
    Darüber hinaus werden Beispieldateien im folgenden Ordner installiert:
    %ProgramFiles%\Microsoft SQL Server Compact Edition\v3.5\Samples
    SSCESqlWbTools-Language. msi ist Teil der SQL Server Compact 3,5 SP1-Version. Die Datei wird als Teil von SQL Server 2008 installiert. Hinweis Ab SQL Server Compact 3,5 SP1 steht die Komponente Abfrage Tools auch zur Verfügung, wenn SQL Server 2008 installiert ist.

Bekannte Probleme in dieser Version

Die bekannten Probleme in SQL Server Compact 3,5 SP1 lauten wie folgt:
  • Integration der Dokumentation (Bol) in Visual Studio und SQL Server-Hilfe SQL Server Compact 3,5 SP1 Books Online (Bol) und Microsoft Synchronization Services für ADO.net sind nur im Microsoft Download Center als Webdownload verfügbar. Sie sind nicht im Lieferumfang von Visual Studio 2008 SP1 oder SQL Server 2008 enthalten. Um auf diese Auflistungen aus der Dokumentation für Visual Studio 2008 SP1 oder SQL Server 2008 zuzugreifen und auf die F1-Hilfe von Visual Studio 2008 SP1 oder SQL Server 2008 zuzugreifen, fügen Sie diese Auflistungen zur kombinierten Hilfesammlung von Visual Studio und SQL Server hinzu. Laden Sie dazu die SQL Server Compact 3,5 SP1-Online Dokumentation und die Microsoft Synchronization Services für ADO.net herunter. Schließen Sie anschließend alle Instanzen der kombinierten Visual Studio/SQL Server-Hilfesammlung, von Visual Studio 2008 und von SQL Server 2008. Wenn Sie die kombinierte Hilfesammlung von Visual Studio und SQL Server erneut öffnen, werden die SQL Server Compact 3,5 SP1-Onlinedokumentation und die Microsoft Synchronization Services für ADO.net Books Online im Inhaltsverzeichnis der Anwendungen, in der Index-, Such-und F1-Hilfe zur Verfügung gestellt.
  • Windows Mobile-Unterstützung Die Installationsdatei für SQL Server Compact 3,5 SP1 für Geräte wird nicht zusammen mit Visual Studio 2008 SP1 installiert. Die Datei steht nur im Microsoft Download Center als Webdownload zur Verfügung.
  • Aktualisieren von Vorabversionen Das Upgrade auf SQL Server Compact 3,5 oder auf SQL Server Compact 3,5 SP1 von SQL Server Compact 3,5 Community Technology Preview (CTP)-Versionen oder von SQL Server Compact 3,5-Betaversionen wird nicht unterstützt. Das Upgrade auf SQL Server Compact 3,5 SP1 von SQL Server Compact 3,5 oder von SQL Server Compact 3,5 SP1 Beta wird unterstützt. Das Upgrade von der CTP-und der Beta Version von SQL Server Compact 3,5 auf die Veröffentlichungsversion wird nicht unterstützt. Beim Deinstallieren einer CTP-oder Beta Version von Visual Studio 2008 wird SQL Server Compact 3,5 nicht deinstalliert. Sie müssen die CTP-oder Beta-Installationen von SQL Server Compact 3,5 entfernen, bevor Sie die Veröffentlichungsversion von Visual Studio 2008 installieren. Führen Sie dazu eine der folgenden Aktionen aus:
    • Klicken Sie unter Windows Vista auf Start, klicken Sie auf SystemSteuerung, und doppelklicken Sie dann auf Programme und Funktionen. Deinstallieren Sie alle CTP-und Beta-Installationen der folgenden Anwendungen:
      • SQL Server Compact 3,5
      • SQL Server Compact 3,5 für Geräte
      • SQL Server Compact 3,5-Entwurfs Tools
    • Klicken Sie unter Windows XP oder Windows Server 2003 auf Start, klicken Sie auf SystemSteuerung, und doppelklicken Sie dann auf Software. Deinstallieren Sie alle CTP-und Beta-Installationen der folgenden Anwendungen:
      • SQL Server Compact 3,5
      • SQL Server Compact 3,5 für Geräte
      • SQL Server Compact 3,5-Entwurfs Tools
  • SQL Server Compact 3,5 SP1 wird nicht deinstalliert, wenn Visual Studio 2008 SP1 deinstalliert wird Bei der Deinstallation von Visual Studio 2008 SP1 werden die SQL Server Compact 3,5 SP1-Entwurfs Tools und SQL Server Compact 3,5 SP1 nicht automatisch deinstalliert. Wenn Sie die Installation von Visual Studio 2008 wiederherstellen möchten, müssen Sie zuerst die SQL Server Compact 3,5 SP1-Entwurfs Tools und SQL Server Compact 3,5 SP1 manuell deinstallieren. Anschließend müssen Sie die Visual Studio 2008-Installationsmedien verwenden, um SQL Server Compact 3,5-Entwurfs Tools und SQL Server Compact 3,5 zu installieren. Die Windows Installer-Pakete für SQL Server Compact 3,5 und für SQL Server Compact 3,5-Entwurfs Tools befinden sich im folgenden Ordner auf den Visual Studio 2008-Installationsmedien:
    WCU\SSCE
    Der Dateiname des SQL Server Compact 3,5-Pakets lautet SSCERuntime-Language. msi. Der Dateiname des SQL Server Compact 3,5-Entwurfs Tools-Pakets lautet SSCEVSTools-Language. msi. Hinweis Die Platzhalter Sprache stellt die Produktsprache von SQL Server Compact dar.
  • SQL Server Management Studio 2008-Integration Wenn Sie bei der Installation von SQL Server 2008 die Option Reparieren auswählen, werden die SQL Server Compact 3,5 SP1-Abfrage Tools und SQL Server Compact 3,5 SP1 nicht automatisch neu installiert. Um dieses Problem zu beheben, installieren Sie die SQL Server Compact. msi-Dateien aus dem folgenden Ordner auf dem SQL Server-Installationsmedium:
    Servers\Setup
    Der Dateiname des SQL Server Compact 3,5 SP1-Pakets lautet SSCERuntime-Language. msi. Der Dateiname des SQL Server Compact 3,5 SP1-Abfrage Tools-Pakets lautet SSCESqlWbTools-Language. msi. Hinweis Die Platzhalter Sprache steht für die Sprache des Produkts. Wichtig Wenn SQL Server Compact 3,5 SP1 nicht installiert ist, wenn Sie SQL Server 2008 Management Studio verwenden, wird die folgende Fehlermeldung angezeigt:
    Microsoft SQL Server Compact konnte nicht geladen werden. Installieren Sie Microsoft SQL Server Compact MSIs aus dem Ordner Servers\Setup auf dem SQL Server-Installationsmedium. Weitere Informationen finden Sie im KB-Artikel 952218.
    Um dieses Problem zu beheben, installieren Sie die Microsoft SQL Server Compact 3,5 SP1-Abfrage Tools und Microsoft SQL Server Compact 3,5 SP1 vom SQL Server 2008-Installationsmedium im Ordner "Servers\Setup". Wenn Sie weitere Informationen zu diesem Problem und zur Behebung dieses Problems erhalten möchten, klicken Sie auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:  
    952218 Fehlermeldung, wenn Sie versuchen, eine Verbindung mit SQL Server Compact 3,5 Service Pack 1 von SQL Server Management Studio in SQL Server 2008 herzustellen: "Microsoft SQL Server Compact kann nicht geladen werden"  
  • Die SQL Server Compact 3,5 SP1 (x86) Server Tools. msi-Datei erkennt IIS nicht, wenn IIS unter Vista (x64) oder Windows 2008 Server installiert ist weitere Informationen zu diesem Problem und zur Lösung dieses Problems finden Sie in folgendem Artikel der Microsoft Knowledge Base:  
    955966 SQL Server Compact 3,5 Service Pack 1-Server Tools werden nicht im WOW-Modus installiert, wenn Sie IIS 7,0 auf einem 64-Bit-Computer mit Windows Server 2008 oder auf einem auf Windows Vista basierenden 64-Bit-Computer ausführen.  
  • Abwärtskompatibilität von Visual Studio für Geräte Nachdem Sie die Geräte Laufzeit von SQL Server Compact 3,5 SP1 installiert haben, können alle "Smart Device"-Projekte, die auf die System. Data. SqlServerCe. dll-Assembly verweisen und mit Visual Studio 2008 SP1 oder Visual Studio 2008 erstellt wurden, nicht hin-und hergeöffnet werden. Dieses Problem tritt auf, weil die Assemblyversion der System. Data. SqlServerCe. dll-Assembly in SQL Server Compact 3,5 SP1 (3.5.1.0) und in SQL Server Compact 3,5 (3.5.0.0) unterschiedlich sind. Mögliche Szenarien und ihre Lösungen lauten wie folgt:
    • Sie erstellen ein "Smart Device"-Projekt mithilfe von Visual Studio 2008, und stellen Sie sicher, dass das Projekt auf die Assembly System. Data. SqlServerCe. dll verweist. Anschließend installieren Sie die Visual Studio 2008 SP1-und SQL Server Compact 3,5 SP1-Geräte Laufzeit. Wenn Sie das Projekt öffnen und dann erstellen, wird die folgende Fehlermeldung angezeigt:
      Für diesen Vorgang ist ein Verweis auf SQL Server Compact 3,5 erforderlich. Das Projekt enthält einen Verweis auf eine andere Version. Aktualisieren Sie den Verweis, und versuchen Sie es erneut.
      Dieses Problem tritt auf, weil die Version der System. Data. SqlServerCe. dll, auf die im Projekt verwiesen wird, von der auf dem Computer vorhandenen System. Data. SqlServerCe. dll-Datei abweicht. Gehen Sie folgendermaßen vor, um dieses Problem zu beheben:
      1. Klicken Sie im Menü Ansicht auf Projektmappen-Explorer.
      2. Klicken Sie auf Verweise.
      3. Aktivieren Sie das Kontrollkästchen System. Data. SqlServerCe , und legen Sie im Dialogfeld Eigenschaften die Eigenschaft bestimmte Version auf false fest.
      Hinweis Bei dieser Lösung ist es nicht erforderlich, die Assemblyversion der Datei System. Data. SqlServerCe. dll zu aktualisieren, wenn Sie das Projekt mithilfe von Visual Studio 2008 und Visual Studio 2008 SP1 hin-und heröffnen.
    • Sie installieren die Visual Studio 2008-und SQL Server Compact 3,5-Geräte Laufzeit. Anschließend öffnen Sie ein "Smart Device"-Projekt, das zuvor auf einem Computer mit Visual Studio 2008 SP1 und der Geräte Laufzeit von SQL Server Compact 3,5 SP1 erstellt wurde. Wenn Sie das Projekt erstellen, wird die Anwendung erfolgreich erstellt. Wenn Sie versuchen, die Anwendung zu debuggen, wird jedoch die folgende Fehlermeldung angezeigt:
      Die PInvoke-dll "sqlceme35. dll" kann nicht gefunden werden
      Dieses Problem tritt auf, weil das Projekt eine lokale Kopie der Datei "System. Data. SqlServerCe. dll" mit Version 3.5.1.0 enthält. Die abhängigen systemeigenen Dateien sind aber nicht auf dem Computer vorhanden. Diese Dateien umfassen Sqlceme35. dll. Gehen Sie folgendermaßen vor, um dieses Problem zu beheben:
      1. Klicken Sie im Menü Ansicht auf Projektmappen-Explorer.
      2. Klicken Sie auf Verweise.
      3. Aktivieren Sie das Kontrollkästchen System. Data. SqlServerCe , und legen Sie dann im Dialogfeld Eigenschaften die Eigenschaft lokal kopieren auf false fest.
      4. Entfernen Sie die Assembly System. Data. SqlServerCe. dll aus dem lokalen Ordner des Projekts.
      5. Klicken Sie auf Verweise.
      6. Klicken Sie mit der rechten Maustaste auf System. Data. SqlServerCe, und klicken Sie dann auf Entfernen.
      7. Klicken Sie auf Verweise.
      8. Klicken Sie mit der rechten Maustaste auf den Bereich Verweise , und klicken Sie dann auf Verweis hinzufügen.
      9. Klicken Sie im Dialogfeld Verweis hinzufügen auf die Registerkarte .net .
      10. Klicken Sie in der Liste Komponenten Name auf das Kontrollkästchen System. Data. SqlServerCe , und klicken Sie dann auf OK.
  • Standardeinschränkungen werden so repliziert, wie Sie sind. Standardeinschränkungen werden "wie besehen" repliziert, wenn ein Artikel, der eine Spalte vom Typ Geometry enthält, auf einen Abonnenten repliziert wird, der SQL Server Compact ausführt. Führen Sie eine der folgenden Aktionen aus, um dieses Problem zu beheben:
    • Replizieren Sie keine Standardeinschränkungen. Deaktivieren Sie stattdessen die Schemaoption für den Artikel, bevor der Artikel auf den Abonnenten repliziert wird.
    • Entfernen Sie die Standardeinschränkung aus der Tabelle, bevor Sie veröffentlichen.
    • Geben Sie den Standardwert als Literal anstelle einer geometrischen Funktion an.
  • Die Eigenschaft "verschlüsseln" der "SqlCeConnection"-Klasse wird nicht verwendet SQL Server Compact 3,5 SP1 verwendet nicht die Encrypt -Eigenschaft der SqlCeConnection -Klasse. Die Encrypt -Eigenschaft der SqlCeConnection -Klasse sollte nicht verwendet werden. Hinweis Die Encrypt -Eigenschaft wird in einer zukünftigen Version als veraltet markiert. Die Eigenschaft wird nur aus Gründen der Abwärtskompatibilität in SQL Server Compact 3,5 SP1 beibehalten. Verwenden Sie die Encryption Mode -Eigenschaft der SqlCeConnection -Klasse, um SQL Server Compact 3,5 SP1-Datenbankdateien zu verschlüsseln. In den folgenden Beispielen wird gezeigt, wie Sie eine neue verschlüsselte SQL Server Compact 3,5 SP1-Datenbank erstellen. C#
    SqlCeEngine engine = new SqlCeEngine("Data Source=Northwind.sdf;encryption mode=platform default;Password=<enterStrongPasswordHere>;");engine.CreateDatabase();
    Visual Basic
    Dim engine As SqlCeEngine = New SqlCeEngine("Data Source=Northwind.sdf;encryption mode=platform default;Password=<enterStrongPasswordHere>;")engine.CreateDatabase()
  • Eine ClickOnce-Anwendung muss erneut veröffentlicht werden, nachdem Sie auf Visual Studio 2008 aktualisiert haben Wenn Sie ein Upgrade von Visual Studio 2005 auf Visual Studio 2008 durchführen, wird eine verschlüsselte SQL Server Compact-Datenbank nicht aktualisiert, und ClickOnce-Anwendungen müssen erneut veröffentlicht werden. In früheren Versionen von SQL Server Compact erstellte Datenbank-Dateien (*. sdf) sind mit SQL Server Compact 3,5 SP1 nicht kompatibel. Nur nicht verschlüsselte Datenbankdateien aus früheren Versionen von SQL Server Compact werden aktualisiert, wenn ein Visual Studio 2005-Projekt auf Visual Studio 2008 aktualisiert wird. Verschlüsselte Datenbankdateien müssen manuell aktualisiert werden. Wenn das Visual Studio 2005-Projekt ClickOnce zum Veröffentlichen von Anwendungen verwendet, sollte die Anwendung erneut veröffentlicht werden, nachdem das Projekt in Visual Studio 2008 aktualisiert wurde. Führen Sie die folgenden Schritte aus, um die verschlüsselten Datenbankdateien manuell zu aktualisieren:
    1. Klicken Sie auf Daten.
    2. Klicken Sie auf neue Datenquelle hinzufügen.
    3. Klicken Sie auf Verbindung hinzufügen.
    Wenn Sie eine frühere Version der Datenbankdatei öffnen, wird eine Meldung angezeigt. Wenn Sie auf OK für die Nachricht klicken, wird das Dialogfeld auf SQL Server Compact 3,5-Datenbank aktualisieren angezeigt. Sie können auch die SqlCeEngine. Upgrade-API für programmgesteuerte Szenarien verwenden. So können Sie beispielsweise Code verwenden, der den folgenden Codebeispielen ähnelt. C#
    SqlCeEngine engine = new SqlCeEngine("Data Source=Northwind.sdf;Password=<enterStrongPasswordHere>;");engine.Upgrade ("Data Source=Northwind.sdf;encryption mode=platform default;Password=<enterStrongPasswordHere>;");
    Visual Basic
    Dim engine As SqlCeEngine = New SqlCeEngine("Data Source=Northwind.sdf;Password=<enterStrongPasswordHere>;")engine.Upgrade("Data Source=Northwind.sdf;encryption mode=platform default;Password=<enterStrongPasswordHere>;")
    Wenn Ihr Projekt ClickOnce zum Veröffentlichen von Anwendungen verwendet, sollte die Anwendung erneut veröffentlicht werden, nachdem die Anwendung in Visual Studio 2008 aktualisiert wurde. Wenn Sie die ClickOnce-Anwendung in Visual Studio 2008 erneut veröffentlichen, wird möglicherweise die folgende Warnmeldung angezeigt:
    Voraussetzungen für die SQL Server 2005 Compact Edition konnten nicht für das Bootstrapping gefunden werden
    Die Warnmeldung kann bedenkenlos ignoriert werden.
  • SQL Server Compact 3,5 SP1-Datentypen für Parameter wie SqlDbType und DbType sollten explizit festgesetzt werden. Wenn die Datentypen für Parameter wie SqlDbType und DbType nicht explizit festzulegen sind, kann ein Datenbankmodul versuchen, den am besten geeigneten Datentyp für diesen Parameter zu erraten. Diese Vermutung ist möglicherweise nicht korrekt, insbesondere bei Zeichenfolgen-und binären Datentypen, die nicht von fester Länge (einschließlich großer Objekte) wie nvarchar, ntext, varbinaryund Imagesind. In diesen Fällen kann eine Ausnahmefehler Meldung ausgelöst werden. Um dieses Problem zu beheben, wird dringend empfohlen, dass Sie die Datenarten von Parametern für Zeichenfolgen-und binäre Datentypen angeben, die nicht von fester Länge sind. So können Sie beispielsweise Code verwenden, der den folgenden Codebeispielen ähnelt. C#
    SqlCeEngine engine = new SqlCeEngine(connString);engine.CreateDatabase();engine.Dispose();SqlCeConnection conn = new SqlCeConnection(connString);conn.Open();SqlCeCommand cmd = conn.CreateCommand();cmd.CommandText = "CREATE TABLE BlobTable(nameCol nvarchar(128), blobCol ntext);";cmd.ExecuteNonQuery();cmd.CommandText = "INSERT INTO BlobTable(nameCol, blobCol) VALUES (@nameParam, @blobParam);";SqlCeParameter paramName = cmd.Parameters.Add("nameParam", SqlDbType.NVarChar, 128);SqlCeParameter paramBlob = cmd.Parameters.Add("blobParam", SqlDbType.NText);paramName.Value = "Name1";paramBlob.Value = "Name1".PadLeft(4001);cmd.ExecuteNonQuery();
    Visual Basic
    Dim engine As SqlCeEngine = New SqlCeEngine(connString)engine.CreateDatabase()engine.Dispose()Dim conn As SqlCeConnection = New SqlCeConnection(connString)conn.Open()Dim cmd As SqlCeCommand = conn.CreateCommand()cmd.CommandText = "CREATE TABLE BlobTable(nameCol nvarchar(128), blobCol ntext);"cmd.ExecuteNonQuery() cmd.CommandText = "INSERT INTO BlobTable(nameCol, blobCol) VALUES (@nameParam, @blobParam);"Dim paramName As SqlCeParameterDim paramBlob As SqlCeParameterparamName = cmd.Parameters.Add("nameParam", SqlDbType.NVarChar, 128)paramBlob = cmd.Parameters.Add("blobParam", SqlDbType.NText)paramName.Value = "Name1"paramBlob.Value = "Name1".PadLeft(4001)cmd.ExecuteNonQuery()
  • Die Kompatibilität von Datenbankdatei Formaten ist in einigen Fällen eingeschränkt SQL Server Compact 3,5 SP1-Datenbankdateien (SDF) können in SQL Server Compact 3,5 und in SQL Server Compact 3,5 SP1 geöffnet werden. In einigen Fällen kann die Kompatibilität des Datenbankdateiformats jedoch eingeschränkt sein. Beispielsweise kann die Datenbankdateiformat-Kompatibilität in den folgenden Szenarien eingeschränkt sein:
    • Eine in SQL Server Compact 3,5 SP1 erstellte Datenbank mit Berücksichtigung der Groß-/Kleinschreibung kann in SQL Server Compact 3,5 nicht geöffnet oder erkannt werden. Beachten Sie, dass Sortierungen unter Berücksichtigung der Groß-/Kleinschreibung ab SQL Server Compact 3,5 SP1 eingeführt werden.
    • Dieselbe Datenbankdatei kann nicht gleichzeitig von der SQL Server Compact 3,5-Laufzeit und der SQL Server Compact 3,5 SP1-Laufzeit geöffnet werden.
  • Eine Abfrage, die einen Left-Outer-Join-Typ mit einer Konstante als linken Operanden enthält, gibt nicht die richtigen Ergebnisse zurück. Wenn Sie eine Abfrage ausführen, die einen Left-Outer-Join-Typ mit einer Konstante als linken Operanden enthält, werden keine richtigen Ergebnisse zurückgegeben. Dieses Problem tritt auf, weil SQL Server Compact solche Abfragen nicht richtig auswertet. Der folgende Code ist ein Beispiel für eine solche Abfrage:
    SELECT * FROM table1 LEFT OUTER JOIN table2 ON 1 = table1.column1
    Die folgende LINQ to Entities-Abfrage enthält auch einen Konstantenwert als Schlüsselauswahlfunktion in der GroupBy -Methode. Diese Abfrage wird intern in eine linke äußere Verknüpfung mit einer Konstante als linken Operanden konvertiert und gibt einen falschen Wert zurück. C#
    using (NorthwindEntities nwEntities = new NorthwindEntities()){   var customers = nwEntities.Customers                   .GroupBy( c => 1, c => c.Customer_ID)                   .Select( c => c);}
  • SQL Server Compact 3,5 SP1-Lauf Zeit Probleme für das ADO.net-Entitäts Framework
    • Korrelierte Unterabfragen, die intern in Skalar-Unterabfragen konvertiert werden, werden in dieser Version nicht unterstützt. Bei solchen Unterabfragen wird die folgende Fehlermeldung angezeigt:
      Beim Ausführen der Befehlsdefinition ist ein Fehler aufgetreten. Details finden Sie in der inneren Ausnahme. " Die innere Ausnahme enthält die folgende Meldung "beim Analysieren der Abfrage ist ein Fehler aufgetreten. [..., Token in Fehler = as]
      Dieses Problem tritt auf, weil Entity Framework die Eingabe Abfrage als Abfrage mit dem Cross Apply-oder OUTER APPLY-Verknüpfungstyp interpretiert. Wenn die Rechte Seite der Join-Bedingung einen Skalarwert zurückgibt, wird die Verknüpfung in eine Skalar-Unterabfrage konvertiert. Der Entity Framework-Anbieter für SQL Server Compact muss diese Skalar-Unterabfrage in eine äquivalente Abfrage mit dem äußeren Apply-Verknüpfungstyp konvertieren, der von SQL Server Compact unterstützt wird. In dieser Version wird diese Konvertierung jedoch nicht ordnungsgemäß durchgeführt. Mit der folgenden Abfrage wird beispielsweise eine Fehlermeldung in dieser Version ausgelöst: C#
      using (NorthwindEntities nwEntities = new NorthwindEntities()){    var orders = nwEntities.Employees                .Select(employee => employee.Orders.Max(order => order.Order_ID));    foreach (var order in orders)    {       Console.WriteLine(order.ToString());    }}
      • Beim Ausführen einer Entity Framework-Abfrage tritt eine Zugriffsverletzungsausnahme auf, wenn sowohl die Hauptabfrage als auch die Unterabfrage ein DISTINCT-Schlüsselwort enthalten und eine Join-Bedingung mit einer Outer Join-Klausel angegeben wird. Mit der folgenden Abfrage wird beispielsweise eine Zugriffsverletzung erstellt:
        SELECT DISTINCT [o].[CustomerID]FROM (SELECT DISTINCT * FROM [Orders]) AS [o]LEFT OUTER JOIN [Customers] AS [c] ON [o].[CustomerID] = [c].[CustomerID]

Liste der behobenen Probleme

Dieses Service Pack behebt die folgenden Probleme:
  • 923979 Fehlermeldung, wenn Sie versuchen, eine Zeile einzufügen oder andere Datenbankvorgänge in einer SQL Server 2005 Mobile Edition-Datenbank auszuführen: "falsche Seite mögliche Datenbankbeschädigung"
  • 933463 Verwaltete Anwendungen, die SQL Server 2005 Mobile Edition verwenden, werden möglicherweise unerwartet beendet, wenn sich der Speicherort der SQL Mobile-DLLs ändert
  • 934386 Sie können SQL Server 2005 Compact Edition nicht auf einem ARMV4i-basierten Gerät verwenden, auf dem Windows CE .NET 4,2 ausgeführt wird
  • 935769 Fehlermeldung beim Upgrade einer Datenbank von SQL Server 2000 Windows CE Edition 2,0 auf SQL Server 2005 Mobile Edition: "die Datenbankdatei ist größer als die konfigurierte maximale Datenbankgröße"
  • 936487 Verwaltete Anwendungen, die SQL Server 2005 Compact Edition 3,1 verwenden, werden möglicherweise auf Windows Mobile 5,0 ARMV4i-kompatiblen Geräten unerwartet beendet, wenn sich der Speicherort der SQL Server Compact Edition-DLLs ändert
  • 938786 .NET Compact Framework 2,0-basierte Geräteanwendung, die die SqlCeEngine. Verify-Methode für eine SQL Server 2005 Compact Edition-Datenbank aufruft, reagiert nicht mehr
  • 947002 Fehlermeldung beim Versuch, die Zeilen aus der Tabelle in SQL Server 2005 Compact Edition oder in SQL Server Compact 3,5 zu löschen: "Hauptfehler 0x80004005, kleiner Fehler 0. Versuch, durch Null zu dividieren "
  • 950440 Die Anwendung scheint nicht mehr zu reagieren, wenn eine Anwendung eine umfangreiche Abfrage ausführt, die Parameter in Prädikaten in SQL Server 2005 Compact Edition aufweist.
  • 951932 Fehlermeldung beim Erstellen eines Abonnements in SQL Server 2005 Compact Edition zu einer Mergeveröffentlichung auf SQL Server 2000: "der Tabellenname ist ungültig. [Token-Zeile (sofern bekannt) = 1, Token-Zeile-Offset (sofern bekannt) = 22; Tabellenname = <TableName>] "
  • 953259 Fehlermeldung beim Ausführen einer SQL-Anweisung, die die CHARINDEX-Funktion in einer Datenbank verwendet, die das Tschechische Gebietsschema in SQL Server 2005 Compact Edition verwendet: "die Funktion wird von SQL Server Compact Edition nicht erkannt"
Dieses Service Pack behebt die folgenden Probleme, die zuvor nicht in einem Microsoft Knowledge Base-Artikel beschrieben wurden:SQL Server Compact 3,5 SP1
  • Bei der Mergereplikation von Daten aus SQL Server 2005 nach SQL Server Compact 3,5 können falsche Transact-SQL-Anweisungen erstellt werden. Darüber hinaus werden Datenänderungen nicht auf SQL Server Compact angewendet. Dieses Problem kann beispielsweise auftreten, wenn eine falsche Transact-SQL-Anweisung wie die folgende erstellt wird:
    not null default n e w i d ( )
    Möglicherweise erwarten Sie eine Transact-SQL-Anweisung wie die folgende, die erstellt werden soll:
    not null default newid()
  • Sie erfahren eine langsamere Abfrageleistung in SQL Server Compact 3,5 im Vergleich zu SQL Server 2005 Compact Edition. Dieses Problem wird durch unterschiedliche Abfragepläne verursacht. Wenn Sie den folgenden Code ausführen, wird in SQL Server Compact 3,5 ein fehlerhafter Abfrageplan generiert, und anstelle des Index Scans wird der Tabellenscan verwendet:
    cmd.CommandText = @"select * from  Customers where Customers.Customer_ID = @v0";cmd.Parameters.Add("@v0", SqlDbType.NVarChar);rdr = cmd.ExecuteReader();
  • Ein TransactionScope -Parameter wird unabhängig davon festgelegt, ob TS. Complete aufgerufen wird. Dieses Problem tritt beispielsweise auf, wenn LINQ to SQL DataContext verwendet wird, wie im folgenden Beispielcode mit SQL Server Compact 3,5:
    using System;using System.Data.Linq;using System.Transactions;namespace bug{    class Program    {        static void Main(string[] args)        {            DataContext ctx = new DataContext("Test.sdf");            using (TransactionScope ts = new TransactionScope())            {                ctx.ExecuteCommand("INSERT INTO x (y) VALUES (2)");            }        }    }
  • Wenn Sie SQL Server Compact zusammen mit ADO.NET Entity Framework verwenden, können Werte, die größer als 8.000 Bytes sind, nicht in eine SQL Server Compact-Tabelle eingefügt werden, die binäre große Objekt Spalten enthält.
  • Wenn ein Index veraltet ist, schlagen Update Statistiken fehl, wenn die Verbindung mit SQL Server Compact 3,5 im schreibgeschützten Modus geöffnet wird.
  • Sie erhalten eine Fehlermeldung zur Zugriffsverletzung im GetColumnRowSet -Prozess für scrollbare Ergebnismengen. Darüber hinaus wird das pError -Objekt vom OpenSharedMemory -Prozess nicht zurückgesetzt, wenn die Erstellung des freigegebenen Speichers in einem globalen Namespace fehlschlägt.
  • Das Freigeben eines Befehls Objekts nach einem Verbindungs Prozess kann eine Ausnahmefehler Meldung auslösen. Dieses Problem kann auftreten, wenn der folgende Code ausgeführt wird:
    SqlCeConnection cn;SqlCeCommand cmd;... cn.Dispose();cmd.Dispose(); 
  • Eine Fehlermeldung zur Zugriffsverletzung wird ausgelöst, wenn eine Select -Anweisung nicht alle Spalten zurückgibt, die nach dem Group by -Parameter und dem Order by -Parameter sortiert sind. Dieses Problem kann beispielsweise mit der folgenden SELECT-Anweisung auftreten:
    SELECT        [Company Name], [Contact Name]FROM            CustomersGROUP BY [Customer ID], [Company Name], [Contact Name]ORDER BY [Customer ID], [Company Name], [Contact Name]
  • Löschweitergabe funktioniert nicht ordnungsgemäß, wenn nur ein Element in der Tabelle vorhanden ist und in einer WHERE-Klausel eine und-Bedingung verwendet wird. Die Verwendung von "nicht" mit "oder" funktioniert ordnungsgemäß. Die folgende Abfrage funktioniert beispielsweise nicht ordnungsgemäß:
    Select from table where (a=x AND b=y)
  • Ein NULL-Wert in der Auswahlliste kann zu einer systemeigenen Ausnahmefehler Meldung im ExecuteReader -Prozess führen. Die Ausnahme wird nicht von der SqlCeException -Klasse abgefangen, und es wird die folgende systemeigene Ausnahmefehler Meldung angezeigt:
    In SqlMobileCrash. exe ist eine systemeigene Ausnahme aufgetreten. Wählen Sie beenden und dann dieses Programm neu starten aus, oder wählen Sie Details aus, um weitere Informationen zu erhalten. Ausnahme Code: 0xc0000005Exception-Adresse: 0x00d1aa68Reading: 0x0027f0000
  • Der Parameter " Tabellen Name " wird bei Verwendung des Befehls " IDENTITY_INSERT einstellen " als Groß-/Kleinschreibung behandelt. Dieses Problem tritt auf, weil bei Metadaten immer die Groß-/Kleinschreibung beachtet werden sollte.
  • Wenn das IDbCommand -Objekt verwendet wird, schlägt das Einfügen in Spalten des Typs float fehl. Dieses Problem tritt beispielsweise mit dem folgenden Code auf:
    try            {                string ConnectionString = "Data Source='Northwind.sdf'";                IDbConnection conn = new SqlCeConnection(ConnectionString);                IDbCommand cmd = conn.CreateCommand();                cmd.CommandText = "insert into \"newtable\"(\"t1\")values(@p0)";                conn.Open();                IDbDataParameter p;                p = cmd.CreateParameter();                p.Value = 7.6M;                p.ParameterName = "@p0";                cmd.Parameters.Add(p);                IDbTransaction t = cmd.Connection.BeginTransaction();                cmd.Transaction = t;                cmd.Prepare();                cmd.ExecuteNonQuery();                p.Value = 10M;                cmd.ExecuteNonQuery(); // Exception is thrown here                t.Commit();            }            catch (Exception ex)            {             }
  • Der Befehl SqlCeResultSet. GetEnumerator löst eine StackOverflowException-Fehlermeldung aus, und der Befehl SqlCeDataReader. GetEnumerator löst eine NotSupportedException-Fehlermeldung aus, wenn der folgende Code ausgeführt wird:
    SqlCeConnection conn = new SqlCeConnection(@"Data Source=Northwind.sdf");conn.Open();SqlCeCommand cmd = conn.CreateCommand();cmd.CommandText = "Select * from categories";SqlCeResultSet res = cmd.ExecuteResultSet(ResultSetOptions.Scrollable | ResultSetOptions.Updatable | ResultSetOptions.Sensitive);IEnumerator e= res.GetEnumerator(); // Exception is thrown here.conn.Close();
  • Wenn ein RAPI-Aufruf ein System. Web-Szenario (ASP.net) simuliert, wird in SQL Server Compact möglicherweise eine Fehlermeldung mit einem NULL-Verweis ausgelöst.
SQL Server Compact 3,5
  • Zusammenführungs Initialisierungen können keine ALTER TABLE -Anweisung für die PRIMARY KEY-Indexeinschränkung ausführen, wenn ein Wartungsplan zum Neuaufbau des Index ausgeführt wird. Die Zusammenführungs Initialisierung schlägt fehl, und es wird die folgende Fehlermeldung angezeigt:
    Der Tabellenname ist ungültig. [Token-Zeile (sofern bekannt) = 1, Token-Zeile-Offset (sofern bekannt) = 21; Tabellenname = Kategorien] HRESULT 0X80040E14 (26100). Die SQL-Anweisung konnte nicht ausgeführt werden. [SQL-Anweisung = ALTER TABLE [dbo]. Kategorien Add Constraint [PK_Categories] Primary Key Clustered ([Kategorie-Nr]) with PAD_INDEX, FILLFACTOR = 85] HRESULT 0X80040E14 (28560)
  • Wenn ein Windows Mobile 2003-basierter Pocket PC mehrere Threads und Prozesse ausführt, um auf die gleiche Datenbank zuzugreifen, kann die Anwendung mit einer zufälligen Fehlermeldung beendet werden.
  • In Microsoft Visual Studio 2008 kann keine Datenbankverbindung mit einer SQL Server Compact-Datenbank hergestellt werden. Dieses Problem tritt auf, wenn die Datenbank größer als 256 Megabyte (MB) ist.
  • Die folgenden SQL Server Compact-systemeigenen Binärdateien werden jetzt von Microsoft signiert.Globale DLL-Dateien
    • Sqlcese35.dll
    • Sqlcecompact35.dll
    • Sqlceqp35.dll
    • Sqlceoledb35.dll
    • Sqlceme35.dll
    • Sqlceca35.dll
    • Sqlcesa35.dll
    • Sqlcerp35.dll
    Sprachspezifische DLL-Dateien
    • Sqlceer35br.dll
    • Sqlceer35cn.dll
    • Sqlceer35cs.dll
    • Sqlceer35da.dll
    • Sqlceer35de.dll
    • Sqlceer35el.dll
    • Sqlceer35en.dll
    • Sqlceer35es.dll
    • Sqlceer35fi.dll
    • Sqlceer35fr.dll
    • Sqlceer35it.dll
    • Sqlceer35ja.dll
    • Sqlceer35ko.dll
    • Sqlceer35nl.dll
    • Sqlceer35no.dll
    • Sqlceer35pl.dll
    • Sqlceer35ps.dll
    • Sqlceer35pt.dll
    • Sqlceer35ru.dll
    • Sqlceer35sv.dll
    • Sqlceer35tw.dll
  • Eine Fehlermeldung zur Zugriffsverletzungsausnahme wird ausgelöst, wenn eine Abfrage mehrere oder Prädikate enthält, wie im folgenden Codebeispiel gezeigt:
    create table t1 (c1 int);create index t1_idx on t1(c1);insert into t1 values (1);insert into t1 values (2);insert into t1 values (3);create table t2 (col1 int, col2 int);insert into t2 values (2,3);insert into t2 values (1,3);insert into t2 values (3,3);select * from t1,t2 where c1 = col1 or c1 = col2 or c1 = 1;
  • Sie führen einen Windows XP-Computer mit einem FAT32-Dateisystem aus. Wenn von einem Windows-Dienst und einer Anwendung gleichzeitig auf eine SQL Server Compact-Datenbank zugegriffen wird, stürzt die Anwendung ab.
  • Die SqlCeEngine Compact -Methode legt den Autoinc_Next-Wert falsch fest, wenn der maximal zugewiesene Wert in einem zugewiesenen Bereich gelöscht wird. Wenn der maximal zugewiesene Wert gelöscht wird, wird der Autoinc_Next-Wert auf einen Wert 1 festgelegt, der größer als der aktuelle Maximalwert ist, der von einem bestimmten Artikel innerhalb seines Bereichs verwendet wird.
  • Unerwartete Ergebnisse können auftreten, wenn in einer TableDirectIndexSearch -Anweisung und in einer Select -Anweisung auf Datensätze zugegriffen wird, die Sonderzeichen enthalten.
  • Microsoft Visual Studio 2005 Query Designer fügt eckige Klammern für Datumsfunktionen hinzu.
  • Während einer Mergereplikation von Daten zwischen SQL Server und SQL Server Compact wird die folgende Fehlermeldung angezeigt:
    Der Sperren-Manager hat keinen Platz mehr für zusätzliche sperren. Dies kann durch große Transaktionen, durch große Sortiervorgänge oder durch Vorgänge verursacht werden, in denen SQL Server Compact Edition temporäre Tabellen erstellt. Sie können den Sperrbereich nicht erhöhen.
  • Eine FormatException-Fehlermeldung wird ausgelöst, wenn eine Zeichenfolge mit dem Parameter des Typs String verkettet wird. Dieses Problem tritt beispielsweise auf, wenn Sie den folgenden Code ausführen:
    SqlCeConnection con = new SqlCeConnection("Test.sdf"); SqlCeCommand cmd = con.CreateCommand();cmd.CommandText = "select firstname + ' ' + lastname from person";bool i = cmd.ExecuteReader().Read();cmd.CommandText = "select firstname + @p0 + lastname from person";cmd.Parameters.Add("@p0", " ");i = cmd.ExecuteReader().Read();
  • Doppelte Parameternamen sind nicht aktiviert.
  • Wenn eine "Delete"-, "Read"-, "ReadPrevious"-Sequenz auftritt, wenn Sie eine Select -Anweisung verwenden, die eine ORDER BY-Klausel enthält, tritt eine Ausnahmefehler Meldung auf.
  • SELECT DISTINCT *-Anweisungen sind nicht zulässig, wenn eine ORDER BY-Klausel verwendet wird.
  • Wenn ein Einschränkungsname angegeben wird, kann eine Spalte nicht zu einer vorhandenen gefüllten Tabelle hinzugefügt werden, die keine Nullwerte und Standardwerte enthält. Dieses Problem tritt beispielsweise auf, wenn Sie den folgenden Code ausführen:
    ALTER TABLE Categories ADD COLUMN bitcol1 bit NOT NULL CONSTRAINT MyConstraint DEFAULT (1);
  • Wenn Sie die folgende Abfrage ausführen, wird ein falscher Index ausgewählt:
    SELECT store_uid, stock_price, stock_class, stock_number, ticket_number, pocket, max(last_reorder_date) last_reorder_date, reorder_point, last_order_qty, sys_line_flag, stock_status, max(last_ship_date) last_ship_date, max(last_scan_date) last_scan_date, max(back_order_status) back_order_status, max(unit_last_scan_date) unit_last_scan_date, max(revision_target) revision_target FROM tbl_master_chart WHERE store_uid = 22359 and stock_price = '0399' and stock_class = 'EGB' and stock_number = '4759' GROUP BY store_uid, stock_price, stock_class, stock_number, ticket_number, pocket, reorder_point, last_order_qty, sys_line_flag, stock_status ORDER BY sys_line_flag DESC, ticket_number
  • Wenn Sie die ReadAbsolute-Prozedur (negative Ganzzahl) verwenden, um den GetString-Wert einer Zeile abzurufen, wird die folgende Ausnahmefehler Meldung angezeigt:
    Es sind keine Daten für die Zeile/Spalte vorhanden.