什么是支持存储过程的Delphi桌面应用程序的最佳数据库?

时间:2009-10-25 03:11:31

标签: database delphi stored-procedures easy-install

我从Turbo Pascal 3开始,去了TP5,第二天买了TP6,叫做Borland,降级到TP5.5。买Delphi 3,现在有Delphi 5 Enterprise。由于两个原因,我在4-5年前编写代码时失去了兴趣;

  1. 整天都在写ASP&其他人的SQL。
  2. PC Techniques杂志消失了。
  3. 我在共享软件市场上有一些程序可靠,但需要认真更新。我喜欢Delphi,或者当它是Borland时(在Borland收购DBase和所有其他垃圾之前),我想尽可能多地挽救我的D5E代码,但我怀疑我能做到。我计划升级到Delphi 2010。

    我的下一个软件版本需要与数据库进行交互。我非常精通MS Sql,并喜欢将所有数据库代码放在存储过程中。

    与Delphi良好交互的最佳数据库选择是什么,允许存储过程并且易于部署,即使是Geico gecko也可以部署它?

    10/25/2009美国东部时间下午18:53 阅读为Delphi 2010安装文档后重新打开


    我下载了Delphi 2010的试用版并解压缩了安装。我一直在阅读包中包含的安装文档。我从zip包中的install.htm开始。

    install.htm明智地告诉您看到以下两篇文章:

    1. 安装说明:http://edn.embarcadero.com/article/39754
    2. 发行说明:http://edn.embarcadero.com/article/39758
    3. 发行说明说明以下内容......

      MSSQL驱动程序需要安装SQL Native Client。 dbxmss.dll需要SQL Native Client 2008。 dbxmss9.dll需要SQL Native Client 2005

      我检查了我的机器以查看是否安装了SQL Native Client。不。我没有读完文档所以我做了一个注释来安装SQL Native Client。

      我用Google搜索了 dbxmss.dll dbxmss9.dll ,并在Embarcadero论坛上找到了一个非常有趣的帖子。 read thread here

      在阅读了这个帖子并仔细思考后,我认为我不会使用Microsoft SQL Express。我不能依赖安装了正确驱动程序的客户。所以,我回来寻找一个不同的解决方案。

      如果我向普通大众销售40美元的产品,我需要有一个防弹解决方案,不需要我的全新客户在我的软件运行之前更新他们的机器。

7 个答案:

答案 0 :(得分:13)

Firebird怎么样?它可以用作嵌入式数据库(xcopy部署)。

其他选项包括DBISAMElevateDB

答案 1 :(得分:3)

在使用VB6和MSSQL的几家公司工作了大约10年后,我一直在使用Firebird开发几年。从MSSQL到Firebird的过渡几乎和从VB6到Delphi的过渡一样简单。我使用个人版本的IBExpert进行数据库管理,我不得不说我从未在SQL Server世界中看到任何可能对IBExpert产生影响的东西。

最重要的是,有几次我能够使用Delphi编写的UDF解决问题,这些问题在SQL中很慢,很丑陋和笨拙。

存储过程在Firebird PSQL中非常强大。我认为Firebird PSQL中的游标比在MS SQL中更自然。

我使用DBExpress与数据库进行交互。它像Delphi一样快速,轻便,简单,就像Firebird一样。如果您的程序包含报告,请查看FastReports。就我的目的而言,它具有更强大的功能,并且比Crystal更快捷,并且不需要为您的用户单独安装。

我不知道Geico穴居人,但我相信Gecko可以做到。

答案 2 :(得分:3)

如果您已熟练使用MS SQL,只需使用MS SQL Server 2008的Express版本。我们已将2005版本用于多个商业项目,并且现在也开始使用2008。这非常非常好;非常好的支持,那里有大量的帮助,文档和样本。 Stack Overflow上有很多优秀的SQL Server专业知识!

正如其他人所说,另一个受到良好支持的方法是Firebird / Interbase。 sproc语言非常强大,特别是我喜欢在sproc中使用'suspend'命令将当前播放状态作为结果记录集中的一行返回给调用者的方式,然后当调用者请求时下一条记录,你的sproc恢复。事实证明,这是过去调试复杂sprocs的一个非常有用的工具。 : - )

使用这些数据库中的任何一个,您都可以在内部使用您的应用程序或将其商业化。

答案 3 :(得分:3)

最近关于 What databases do you use in your Delphi programs?

的帖子

Firebird是胜利者

答案 4 :(得分:2)

Firebird =小型企业应用程序的最佳数据库。

答案 5 :(得分:2)

看看NexusDB,它已在您的应用程序中编译,因此无需部署。如果您有预算,甚至可以使用DCU免费版本。

答案 6 :(得分:0)

MySql怎么样?

它已经积极开发并且拥有庞大的用户群