c# - 我试图掌握创建一个使用 SQL Server 数据库的程序的概念,但我习惯于只在我的本地机器上运行它

标签 c# sql sql-server .net-3.5

如何让程序使用 SQL Server 数据库,并让该程序在安装它的任何计算机上运行。

如果您今天一直在关注我的一系列问题,您就会知道我正在为中小型企业制作一个开源且免费的帮助台套件。

  1. 客户端应用程序。 客户端应用程序是 Windows 窗体应用程序。在每台客户端计算机上安装和首次启动时,它会询问主要帮助台服务器的地址。

  2. 服务器。 在这里,我计划处理所有传入的帮助请求,将它们展示给 IT 人员,并提供 WCF 服务供客户端应用程序使用。

我的困境在于,我知道如何让程序在我的本地机器上运行;但我真的很困惑如何让每个想要在其 Windows Server 上下载和安装服务器位的人都能使用它。

当用户想要安装“服务器”应用程序时,我是否必须制作一个 SQL 脚本并让它在 MS SQL 服务器上运行?

非常感谢大家花费宝贵的时间和精力来教我。真的真的很感激。 :)

编辑: 澄清一下,每个企业的服务器都将与我完全分开。我将无法访问他们,他们也不会以任何方式与我联系。 (我不知道为什么我应该澄清这一点 :P )

因此,假设没有安装绝对没有数据库服务器;我能做什么?

最佳答案

好的,答案的一部分,处理 SQL Server 数据库(坦率地说,SQL Server Express 会让你走一段很长的路——4Gb 的数据)和服务器安装元素。

首先将 SQL 安装作为一个 SEP,使其成为先决条件,可能会调整您的安装程序以进行测试(具有挑战性),但实质上将它们指向 SQL Server Express 的链接并让它们继续使用它。

其次,按照建议,为您的客户端和服务器元素分离安装程序。

最后,如何构建数据库——我建议使用代码来创建和维护(更新)模式,即一旦你连接到服务器,你就可以运行调用 DDL 的代码来执行必要的操作(比如此处建议:How to create "embedded" SQL 2008 database file if it doesn't exist? )

一个问题 - 您是否打算让来自客户端的所有通信都通过您的 WCF 服务?

关于c# - 我试图掌握创建一个使用 SQL Server 数据库的程序的概念,但我习惯于只在我的本地机器上运行它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2710648/

相关文章:

sql - 合并存储过程的结果集

c# - .Net ORM 具有最快的学习曲线?

c# - 将二维数组传递给 Web API 服务器

sql - 在主键冲突错误后继续事务

sql - 显示 Sql 表中的特定列

c# - 字符串包含引号字符 (')

c# - 如何通过异步调用更新列表框?

c# - 删除 Service Fabric App 后进程仍在运行

sql - 选择期间内加上最后一个期间之前的内容

sql - Oracle SQL 查询大于日期语句获取值