何时使用.mdf,何时使用.sdf?

问题描述 投票:0回答:4

在互联网上看了很多东西后,我没有找到这两种文件类型之间的任何解释:

.mdf
.sdf

我相信,

.sdf
将是 SQL Server 的精简版 (
.mdf
)。但它们看起来仍然完全不同。

已遵循 msdn 上的两个教程,即 MVC Movie AppMusicstore。两者都使用

.sdf

部分引用(完整):'首先它应该是“|DataDirectory|ASPNETDBContext.mdf”(注意扩展名差异)。您的申请...'

两个教程都有

.sdf
的连接字符串,即:

<add name             ="MovieDBContext"
     connectionString ="Data Source=|DataDirectory|Movies.sdf" 
     providerName     ="System.Data.SqlServerCe.4.0"
/>

<add name             ="MusicStoreEntities" 
     connectionString ="Data Source=|DataDirectory|MvcMusicStore.sdf" 
     providerName     ="System.Data.SqlServerCe.4.0"
/> 

问题:

我的问题是何时何地使用什么?更多关于为什么在哪里使用。

sql asp.net-mvc database entity-framework vwdexpress
4个回答
17
投票

Windows Phone中流行的SQL Server Compact(sdf文件)用于存储一些数据(少量数据),也可以在网站中使用,但性能较差,甚至SQLite更好。

SQL Server(mdf 文件)用于具有大量数据的大型站点。它更强大,但不能在手机中使用,必须安装在服务器上。

看这个:SQL Server Compact、SQL Server Express 2012 和 LocalDB 的比较


12
投票

SQL Server Compact Edition 确实与“常规”SQL Server 有很大不同。

SQL Server CE 是一个独立的单用户数据库,由运行代码的计算机上的应用程序加载;它在一个

.sdf
文件中包含所有数据,并且仅支持“常规”SQL Server(及其功能)的一小部分。 SQL Server CE 非常适合简单、独立、单用户应用程序(例如手机应用程序)。

“真正的”SQL Server 是一个服务器产品 - 您将其安装在服务器上,您的客户端仅连接到它(通常,客户端计算机本身没有安装 SQL Server)。它是一个成熟的 RDBMS,包含所有内容 - 存储过程、触发器等,因此经过最佳优化以处理结构化的大规模数据 - 想想企业应用程序,例如订单处理、发票、会计、任何多个用户的大型数据库善良。


0
投票

首先,sql server 数据库文件不是完整的sql server 数据库,如果您以这种方式创建它,它是一个sql server express。 Sql Server Express 数据库使用起来并不是非常好,因为大多数主机不运行 sql server express,并且如果您尝试让它们在 sql server 数据库上运行,那么发布它们会很棘手。最好先从sql server开始,然后再表达和迁移。

本地数据库实际上是sql server精简版。 http://en.wikipedia.org/wiki/SQL_Server_Compact

有关连接字符串,请访问 http://www.connectionstrings.com/sql-server/ 那里几乎提供了所有可用的连接字符串。要使用 SQL Server Express,您需要安装它,要管理它,您需要下载 sql server Express 管理工具。一般来说,大多数 sql express 实例都设计为与本地帐户一起使用,但如果我没记错的话,您可以使用管理工具创建 sql server 登录名。


0
投票

你我知道 bruhhhh!?!?!!?

© www.soinside.com 2019 - 2024. All rights reserved.