我需要为 Windows 构建一个简单的单用户数据库应用程序。主要要求是独立于 Windows 版本和安装的软件。您会推荐哪些技术(语言/框架)?我对语言的偏好是 Visual Basic。
编辑:VB.Net 和 SQL Server Compact Edition 怎么样?
我需要为 Windows 构建一个简单的单用户数据库应用程序。主要要求是独立于 Windows 版本和安装的软件。您会推荐哪些技术(语言/框架)?我对语言的偏好是 Visual Basic。
编辑:VB.Net 和 SQL Server Compact Edition 怎么样?
我会推荐Sqlite。它是完全独立的,并且是公共领域,因此根本没有许可证问题。
由于您的要求是基于 Windows 的应用程序,我建议您使用免费工具 sql server 2005 express edition,但有一些小的限制。当您使用付费版本时,您可以升级到更大的版本。
还有其他数据库引擎,例如 SQL Lite 或 FireBird,如果它们提供的支持和增长选项对您来说足够好,请选择它们
此外,Visual Basic 是生命周期的。VB.NET 目前可能是一个更好的基于 Windows 的平台。它将提供更好的平台/功能,并且当您想扩展您在项目中工作的人才时,我认为.NET 人才可能比想要使用死语言的程序员更容易获得。
.NET中的快速嵌入式数据库有哪些选项?
我将从那里重复我的答案:
"Or theres Esent, the built in database that exists in every copy of windows. Read about it here: http://ayende.com/Blog/archive/2008/12/23/hidden-windows-gems-extensible-storage-engine.aspx" and http://www.codeplex.com/ManagedEsent
SQLite 适用于本地桌面应用程序。如果您想要多个用户、几千兆数据和多个连接,我会使用 mysql 或 Firebird。
FireBird SQL服务器将是首选。它可以像传统数据库一样用于嵌入式和多用户模式。它实现了许多 SQL 标准并拥有强大的社区基础。它适用于 Windows、Linux、Solaris、OS X、HP-UX
如前所述,SQLite 是一个很棒的单用户数据库。 此页面有 VB/SQLite 示例。曾经担心的是 SQLite 解析外键约束,但不强制执行它们。您可以使用此代码为 SQLite 生成“外键触发器”,从而获得一个易于使用的具有 FK 约束的数据库。
但是,根据您的数据库需求的要求,您可能需要考虑 MS Access。
我使用了 SQL Server 精简版。这就像 sqllite。使用 ADO.NET 访问的单个 SDF 文件。您可以使用 Visual Basic .NET 开发应用程序并使用 Visual Studio 管理数据库(添加表、列、约束等)。
SQLite 可能是您正在寻找的。 http://www.sqlite.org/
取决于您对应用程序的需求。
您可以使用SQLLite,它是一个非常好的数据库,无需安装。
您还可以使用Microsoft SQL Server:SQL Server Compact 3.5。
两者都是免费的!
好吧,假设你之前没有任何经验...
您需要某种持久性存储(例如数据库)和客户端。对于存储,您几乎可以使用任何东西。例如,您可以在 MS Access 中创建数据库,然后将其作为文件发送,使用 ADO 访问它。其他选项是 MS SQL Express 版本(预装在某些机器上或可以免费安装)和大量开源数据库,如SQLite
对于客户端,VBScript 和 ADO(使用 OLE DB 驱动程序)不会出错。自黑暗时代以来,它们随每个 Windows 安装一起提供,您将在线获得大量参考/教程/答案。一个缺点:没有 UI 可言,因此您必须构建一个命令行界面(用于“简单”应用程序)。
如果您想构建一个 UI,我建议您使用 .NET WinForms。开销会大大增加,但 .NET 现在已安装在所有 XP/Vista 机器上,即使不是,您也可以始终将框架与您的应用程序一起安装。
从您的帖子中不清楚您是否想要一个 Web 应用程序。
对于 Web 应用程序,MySQL 在 Windows 平台上有效地工作。您还拥有几乎无限的开发环境选项,包括 PHP、Ruby on Rails、Django 和 .Net。
如果您正在查看桌面应用程序,MS Access 可能是合适的……对于简单的应用程序来说非常简单。
如果您想构建可以轻松移动到其他 PC 的应用程序,我更喜欢 Microsoft Access,它是易于使用且无需安装的小型数据库。它适用于地址簿、迷你 crud 系统等应用程序。
但是如果你想开发企业数据库系统,你应该使用MySQL。
我不明白您所说的“独立形式 [...] 已安装软件”是什么意思。您至少需要安装 DBMS 以及一个客户端或用户界面。
我建议使用 MS Access。对于简单的单用户任务和快速原型开发来说,它既简单又便宜。只需购买开发版本(“正常”访问)即可创建数据库。Access 2007 的运行时版本可以从 Microsoft 主页免费下载 - 仅使用您创建的数据库。
它还将 DBMS 和 GUI 前端结合在同一个工具中。
我敢提 MS Access ...吗?
如果您正在寻找占用空间小(最多几 MB)和易于部署(最终用户应该只安装您的应用程序以使其工作),那么您的选择是嵌入 SQLite 和 Firebird。
在这两者中,我会随时选择 Firebird,因为它完全支持 SQL(例如,您不能在 SQLite 中删除列)、ACID 合规性以及无需任何更改即可进入客户端/服务器的能力(只需如果您决定让多个用户在同一个数据库上工作,请将连接字符串从嵌入式更改为服务器)。
更不用说你可以使用全服务器开发(这意味着你的应用程序和数据库管理工具可以同时连接到数据库)。
我成功地使用了 Turbo Delphi(免费用于商业和非商业用途)+ ZeosLib(zeos.firmos.at)。
您需要与 .exe 一起分发的唯一东西是数据库客户端 dll(无需安装客户端,只需将 dll 放在同一目录中)。
可喜有用吗?
I can recommend from personal experience "My Visual database" free, no code, no sql, just drag and drop.
最好的选择是使用Delphi创建一个 Win32 本机应用程序并使用 SQLLite 作为数据库。
原因是 Delphi 可以在机器上不安装任何其他产品的情况下生成本机 win32 应用程序。