部署数据库

时间:2015-09-28 16:32:12

标签: vb.net clickonce

我们有一个带有本地数据库的客户端应用程序。偶尔我们需要提供数据库更新,包括更改列,添加列等等。我们要检查应用程序是否首次运行部署数据库。如果没有,请检查更新。通过单击一次部署数据库更新的最简单方法是什么。 这可能是将脚本部署到文件夹并让本地应用程序检查并运行?

2 个答案:

答案 0 :(得分:0)

启用entity framework时使用automatic migrations,并确保通过EF迁移处理对数据库的所有更改。

当您决定更改服务器应用时 - 执行以下操作:

  1. 更改主应用
  2. 更改客户端应用架构
  3. 将新构建设置版本推送到当前 - 这样当用户时 启动客户端应用程序,除非最新版本,否则它将无法运行 下载并运行
  4. 下载版本时,请在开始时运行EF迁移脚本。

答案 1 :(得分:0)

我建议您包含用于更新数据库的脚本。在脚本中包含版本号。还要在数据库中存储版本号。让应用程序检查是否包含脚本。您可以使用某种模板名称通过通配符检查它们,或将它们放在资源字符串中。如果有脚本,请将版本号与数据库中的版本号进行比较,以查看是否需要执行脚本,如果需要,请执行此操作,然后更新数据库中的版本。

另一个提示 - 请不要将您的数据存储在DataDirectory中,并依靠ClickOnce来继续前进。这很危险。查看this article告诉您如何处理数据,以免ClickOnce更新搞砸了。