【问题标题】:Updating database on website from another data store从另一个数据存储更新网站上的数据库
【发布时间】:2009-07-15 02:27:10
【问题描述】:

我有一个客户拥有一家只有少数员工的企业。他有一个产品网站,其中包含数百个通过 FTP 定期更新的静态产品页面。

我们希望将其更改为数据驱动的网站,但必须根据我客户服务器上的数据更新数据库(将托管在 ISP 上)。

如何最好地做到这一点?数据库可以通过 FTP 进行热交换,还是我们需要构建一个可以将更改推送到的 Web 服务?

【问题讨论】:

    标签: sql-server asp.net-mvc web-services web-applications


    【解决方案1】:

    向 ISP 询问选项。一些 ISP 允许您通过 ftp 上传 .mdf(数据库文件)。 有些允许您连接 SQL 管理工作室。 有些会允许两者。

    您必须询问 ISP。

    【讨论】:

    • 原来我们可以使用普通的连接字符串直接连接到ISP上的SQL Server。一旦我们弄清楚了,编写一个帮助应用程序来上传数据就很简单了。
    【解决方案2】:

    上次我这样做时,我们创建了通过 ftp 传输到网站的 XML 文档。我们有一个管理页面,可以通过运行一些存储的过程来截断表,然后将 xml 文档导入 sql 表来清除旧数据。

    由于我们自己没有整个服务器,因此无法访问 SQL Server DTS 来安排这些工作。

    【讨论】:

    • 由于用户必须首先在本地处理数据,所以他们不介意额外的步骤。我从一本书中得到了这个想法,该书使用这种技术为用户和查找表复制数据。我想只是不断重复每日更新。
    【解决方案3】:

    有一个来自 MS 的数据库发布向导,它将获取您的所有数据并创建一个可以在 ISP 上运行的 SQL 文件。尽管我从未尝试过,但它也可以直接访问 ISP 数据库。在其中一个向导屏幕上有一个选项按钮可以执行此操作。

    它确实需要用户接受一些培训,而且它仍然是一个手动过程,所以可能不是你想要的,但我认为它会完成这项工作。

    【讨论】:

    • 每次都必须重新创建架构,还是只能移动数据?
    • 要么。我认为第一个窗口有一个选项可以设置它。缺点是它会处理(所有)数据,随着数据库的增长,这可能会很痛苦。但是,如果目前它很小,那么在找到更好的解决方案之前可能会这样做。
    • 从头开始!它位于第 4 步,是选项网格中的最后一行。
    【解决方案4】:

    从长远来看,构建一个上传数据的服务可能是最简洁的解决方案,因为该应用现在可以控制它的导入过程。你可以非常简单,只需让本地副本转储应用程序可以读取的某种 XML,这并不比在仍处于可自动化类别时上传文件难多少。有了这个导入过程也有助于开发,因为您现在有一种自动化且可重复的方式来同步数据。

    【讨论】:

      【解决方案5】:

      这是我通常做的:

      您可以使用像 Red-Gate 的 SQL Data Compere 这样的工具来执行此操作。该工具会比较两个目录(在相同或不同服务器上)之间的数据并生成用于同步它们的脚本。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-06-21
        • 1970-01-01
        • 2010-11-16
        • 1970-01-01
        • 2013-02-23
        • 2016-11-18
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多