SQL Server Compact 和 LINQ to SQL
SQL Server Compact 是隨 Visual Studio 一起安裝的預設資料庫。 如需詳細資訊,請參閱使用 SQL Server Compact (Visual Studio)。
本主題簡述 LINQ to SQL 支援的使用方式、設定、功能集以及範圍的主要差異。
有關 LINQ to SQL 的 SQL Server Compact 特性
根據預設,所有 Visual Studio 版本都會安裝 SQL Server Compact,因此可在開發電腦搭配 LINQ to SQL 使用。 但是,使用 SQL Server Compact 及 LINQ to SQL 的應用程式部署與 SQL Server 應用程式的部署不同。 SQL Server Compact 不屬於 .NET Framework,因此必須封裝在應用程式中或從 Microsoft 網站個別下載。
並注意下列特性:
SQL Server Compact 會封裝成可直接用於資料庫檔案 (.sdf 副檔名) 的 DLL。
SQL Server Compact 會在與用戶端應用程式相同的處理序中執行。 因此,與 SQL Server Compact 的通訊效率明顯高於與 SQL Server 的通訊效率。 另一方面,SQL Server Compact 一定需要 Managed 程式碼和 Unmanaged 程式碼與其附帶成本之間的互通性。
SQL Server Compact DLL 不大。 這項功能可縮減應用程式整體大小。
LINQ to SQL 執行階段與 SQLMetal 命令列工具都支援 SQL Server Compact。
物件關聯式設計工具不支援 SQL Server Compact。
功能集
從下列會影響 LINQ to SQL 應用程式的層面來說,SQL Server Compact 功能集比 SQL Server 的功能集簡單許多:
SQL Server Compact 不支援預存程序或檢視。
SQL Server Compact 僅支援部分的資料類型和 SQL 函式。
SQL Server Compact 僅支援部分的 SQL 建構。
SQL Server Compact 僅提供最簡單的最佳化工具。 因此有些查詢可能會逾時。
SQL Server Compact 不支援部分信任。