【发布时间】:2010-12-28 21:55:30
【问题描述】:
如何向利用本地 sql 数据库的用户发布 winform 应用程序。我会假设我需要在某种设置阶段安装数据库,但是这种事情可能吗?有没有可以用这种方式使用的免费版本的tsql? mysql?
【问题讨论】:
标签: c# .net sql-server winforms tsql
如何向利用本地 sql 数据库的用户发布 winform 应用程序。我会假设我需要在某种设置阶段安装数据库,但是这种事情可能吗?有没有可以用这种方式使用的免费版本的tsql? mysql?
【问题讨论】:
标签: c# .net sql-server winforms tsql
SQL Server Compact Edition 适合这个。它有一些限制,因为它不支持 SQL Server 支持的全套功能(例如,存储过程就是一个例子),但这确实意味着您不需要安装 SQL Server 即可使用它。如果您只是将数据库用作“位桶”来存储和检索数据,那么它就足够了。
另一种选择是使用SQL Server Express Edition。这确实需要安装适当的 SQL Server 实例,但基本上是为您提供完整 SQL Server 的精简版本,使您能够使用它的更多功能。
这两个都是免费的。
【讨论】:
TSQL 是一种语言规范,而不是实际的数据库。
如果您谈论的是 MS SQL Server,如果您想随应用分发数据库,则可以捆绑并安装 SQL Server Express 的实例。 There's some documentation on it over on MSDN,具体来说,Embedding SQL Server Express into Custom Applications.
【讨论】:
您可能还想查看VistaDB。它在语法上与 sql server 兼容(尽管并不完美)。所有托管代码。但它不是免费的。
SQL Server Compact Edition 不支持存储过程,仅供参考。但是是单个文件部署加上您的数据文件。
SQLite 非常快速和轻量级。部署是单个文件加数据文件。但它有一些语法限制,并且对其 dotnet 集成也有限制(尽管我很确定它有一个 ado.net 提供程序。)
我支持基于 sql express edition 构建的应用程序,这很麻烦。它有很多安装失败。 (在过去 3 年中可能安装了大约 1 万次。)但如果您需要电源、热备份、完整的 sp 和功能支持、连接池等,它会为您工作。
从来没有用过mysql,所以无法评论。
赛斯
【讨论】: