【问题标题】:How To Deploy A Windows Application That Uses SQL Server (Standalone EXE)如何部署使用 SQL Server(独立 EXE)的 Windows 应用程序
【发布时间】:2025-11-25 07:50:08
【问题描述】:

我目前在文本文件中访问和写入数据,但想迁移到 SQL Server(也不确定是哪个版本)。注意:这是一个 Windows 桌面、Windows 窗体应用程序。

我的应用程序使用数据库(单用户),我只想部署 EXE 文件,不需要额外的 DB/Access 表等(无论如何我想使用 SQL Server 而不是 MSAccess)。

将数据库表安装到我的用户计算机上的最佳方法是什么? (我也不想使用 MSI 安装程序等,只是一个 EXE 文件)。

【问题讨论】:

  • 不幸的是,我认为这是不可能的。 (但我希望我错了。)

标签: c# sql-server vb.net deployment


【解决方案1】:

假设客户端上有一个可用的 SQL Server 实例,您可以使用我公司的产品BuildMaster 为您创建此 EXE。安装后,您可以:

  1. 安装 SQL Server 扩展(Admin > BuildMaster Extensions)
  2. 创建一个新的标准应用程序
  3. 从应用程序菜单栏中选择“配置”>“数据库连接”
  4. 注册与新 SQL Server 数据库的新连接
  5. 在 BuildMaster 中初始化数据库
  6. 从应用程序菜单栏中访问“配置”>“SQL 更改脚本”
  7. 选择“添加更改脚本”以上传您要从中制作 EXE 的脚本文件
  8. 保存后,您可以选择“下载部署工具”,这将生成一个独立的 EXE,其中包含脚本

此生成的 EXE 可以使用 Using the Change Script Package 文档中指定的可选参数(例如自定义连接字符串)运行。另请注意,它只会对目标数据库运行一次脚本。有关这方面的更多信息,您可以阅读change script documentation

毫不奇怪,这就是我们部署 BuildMaster 数据库本身的方式;该工具作为嵌入式资源包含在安装程序中,然后写入磁盘并由安装程序执行。

【讨论】:

    【解决方案2】:

    SQL Server 并非旨在嵌入到应用程序中。考虑使用可嵌入的 SQL 数据库,例如 SQLLiteSQL Server Compact。您也可以使用某些方法install SQL Server Express with your application

    【讨论】:

    • SQL Server Compact 可能是 OP 想要的,因为他在 .NET 领域。
    • 感谢您的回复,那么使用 SQL Compact,如何将表从 EXE 安装到用户的数据库中?
    • 您需要对其进行一些学习,然后如果遇到问题,请提出问题。该网站有教程可以帮助你。
    • 教程,包括一个关于部署的:msdn.microsoft.com/en-us/data/bb219480
    • 这是主要问题,我只是在寻找一种方法来分配带有数据库和安装表的 EXE,我相信附近会有指南,目前我没有甚至知道要搜索的问题是我卡在哪里,我花了几个小时搜索所有导致死胡同的问题。
    最近更新 更多