【问题标题】:What's the difference between a SQL Server database FILE and an actual SQL Server database in ASP.NET?SQL Server 数据库文件和 ASP.NET 中的实际 SQL Server 数据库有什么区别?
【发布时间】:2010-08-25 20:30:03
【问题描述】:

好吧,主题标题基本上说明了一切:SQL Server 数据库文件 (.mdf) 和实际的 SQL Server 数据库有什么区别?另外,还有几个后续问题:

SQL Server 2008 Express 和 SQL Server 2008 R2 是否都存在数据库文件? 那些有区别吗?

当上传一个有 db 文件的站点时,它会自动连接到服务器上运行的 db 吗?需要db的连接字符串信息吗?

【问题讨论】:

    标签: sql-server-2008 sql-server-express mdf


    【解决方案1】:

    Express 和完整版本的 SQL 使用 MDF 和 LDF。看看here

    上传 MDF - 不,通常需要将数据库专门附加到服务器或从备份中恢复,但一个例外是可以通过 AttachDbFilename 在 SQL Express 中附加。

    Express MDF 和 LDF 可以附加到完整版本的 SQL 中,但反过来不一定正确 - Express 具有大小限制等限制,并且索引视图等功能在 Express 中不可用。

    【讨论】:

    • 我的生产服务器上运行着 SQL Server 2008 R2。 VS 2010 中的自动发布功能会为我附加这些文件之一,还是我必须手动指定它?我想我的困惑源于项目解决方案在 VS 中的映射方式与它需要在服务器上的布局方式相比。
    • 如果您在开发/本地环境中需要 Prod 数据库的副本,建议您备份/恢复(分离生产数据库来复制它是不可想象的)但是反过来,我永远不会直接发布到您的产品数据库。从 VS 部署到 Dev 或 QA 环境,然后使用 Redgate SQLCompare 之类的工具编写 QA 和 Prod 之间的更改脚本版本控制。您通常不想将虚拟测试数据上传到 prod
    • 我的 VS (2010 Professional) 版本不允许我创建数据库项目,AFAIK。当我单击“新建项目...”时,甚至没有列出任何数据库项目类别
    【解决方案2】:

    这里的“数据库”可能是指您发送查询和接收结果集的程序和服务集。 .mdf 文件是实际存储数据的位置。数据库程序读取数据库文件。

    我很确定 Express 版本具有相同的架构(MDF 文件中的数据)。有可能(虽然我不太确定)程序版本之间的文件内部结构可能存在差异。

    不确定第三个问题的答案,但通常安装数据库是一个独立于简单上传网站的过程(根据我的经验)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-01
      • 1970-01-01
      • 2010-09-18
      • 2011-02-13
      • 2010-09-24
      • 1970-01-01
      • 1970-01-01
      • 2019-05-15
      相关资源
      最近更新 更多