asp.net - 我应该将 MDF 文件附加到 SQL Express 还是将真实的部署脚本附加到 SQL Server?

标签 asp.net sql-server deployment mdf

我正在 ASP.NET 4.0(使用 EF 4.0)上构建一个类似博客的发布系统,我希望它非常容易部署/备份首先 。我正处于一个决策点:是否让系统在 SQL Server 中创建数据库并使用该数据库(传统上),或者在站点中拥有一个 App_Data MDF 文件并仅使用 SQL Express 附加到该文件。我知道 Express 版本的内存/大小限制,并且我不会达到限制,因为这不是性能关键型业务应用程序或任何严肃的东西。只是一个带有博客/文章/照片的简单 CMS(实际照片不保存在数据库中,只是它们的路径保存在 MDF 中),仅此而已。我认为使用 MDF 没有问题,但我也不是该主题的专家,因为我从未使用 MDF 文件工作/创建过网站。我总是部署在 SQL Server 上,但我不想处理用户/角色/权限,并且我最不想让用户因数据库设置而出现安装问题。

我应该搭配什么?我在使用 MDF 时会遇到什么问题?有推荐吗?

最佳答案

如果您使用 SQL Server Express - 这是一个服务器 - 我总是会选择“真正的”数据库方法:将数据库连接到服务器,访问它根据其数据库名称,部署 SQL 脚本来更新它。

“从文件路径附加数据库”对我来说总是像是一个半生不熟且相当困惑的拼凑......

如果您不需要这种能力 - 调查 SQL Server Compact Edition这是一个只有一个文件的进程内数据库。它有其局限性 - 没有存储过程,不支持某些数据类型,例如 VARCHAR(MAX)XML - 但对于更简单的场景,它是完美且易于使用的 -只需将其部署在您的应用程序中即可。它是单用户的,例如您不会在多个客户端之间共享数据,它是每个用户/应用程序自己的本地存储

关于asp.net - 我应该将 MDF 文件附加到 SQL Express 还是将真实的部署脚本附加到 SQL Server?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6755750/

相关文章:

c# - 我可以在 GridView 中合并页脚吗?

javascript - ASP :RadioButton and javascript function $find()

sql-server - 如何找到连接字符串的 ODBC 驱动程序名称?

java - 通过双击启动 Java 程序

azure - 清除应用服务实例并从 zip 文件上传新内容

deployment - JavaFX native bundle exe 抛出 "JavaFx launcher Exception",可执行 Jar 文件完美运行

c# - ASP Repeater 没有以正确的顺序显示数据

c# - ListView 控件中的 ASP.NET 更新面板未更新

sql-server - 如何在 SSIS 中使用可变数量的空格构建动态连接字符串

sql-server - SQL 表 - 插入和删除超时,选择确定