关于hyperfile db的建议

时间:2012-06-26 14:21:12

标签: database windev

在我的工作中,我的同事正在考虑将hyperfile用作windev项目的数据库服务器。我甚至不知道那种数据库,它来自开发windev的公司PCSOFT。

由于windev也可以与microsoft sql server一起使用,我正在寻找那些已经使用它的人对这种数据库(性能,稳定性等)的建议。

问候!

6 个答案:

答案 0 :(得分:7)

这取决于项目的大小。实际上,Windev与HyperFileSQL配合得很好。它专为它而设计!通过使用另一个DBMS,您可以自己削减一些功能,例如在表格中直接读取/修改/删除。

只要您在表格中有大量记录(> 100'000),您的表现就会显着下降。您的数据库管理将成为一场噩梦,因为您无法同时执行多个SQL请求。例如,我正在使用法国人开发的另一个工具来管理我的数据库并执行一些更新。

尽管如此,它仍然稳定,并提供了与Windev领域交互的简便方法。

在我看来,Hyperfile SQL应该与具有少量功能和数据的小型应用程序一起使用。

答案 1 :(得分:2)

您应该仔细考虑将使用的sql函数。例如deg2rad,rad2deg,...无法正常工作。

此外,如果您想在移动设备(适用于iOS或Android的Windev Mobile)上使用它,您应该使用SQLLite。因为HyperFile会占用大量内存,而且在移动设备上会出现问题。

答案 2 :(得分:2)

如果你想要一个免费的数据库,使用PostgreSQL,PostgreSQL的Windev连接器可以免费下载并安装在你的windev上作为HFSQL的替代品,它会像使用HFSQL一样使用常用的hFunction,另外,你会在网上找到大量的文档来做强大的工作。

HFSQL实际上与旧的ISAM DBASE数据库相同,因此它需要重新索引以及那些旧的数据库系统时代的东西。

PostgreSQL就像拥有一个具有所有强大功能和可靠性的免费Oracle数据库,我们为此放弃了HFSQL,性能提高了十倍,加上所有其他好处,同时保持我们的代码几乎相同,每天感觉就像我们发现免费赠品自我们迁移以来,ProsgreSQL赠送的礼物:)

免费VS免费...您必须使用强大的网页文档和大量的文档来帮助您。

答案 3 :(得分:2)

除了SamuëlTremblay已经写过的内容之外,我会说在使用Windev和HFSQL(旧名称是HyperFile SQL)2年多之后,这是我的结论(我使用了Windev版本20和22):

<强>优点:

  • 将数据库复制到另一台服务器非常容易。您可以选择复制整个数据库或选择的表。但像PostgreSQL这样的DBMS实际上提供了高级复制设置(https://www.2ndquadrant.com/en/resources/pglogical/)。

  • 轻松导出到查询/表格的Microsoft Excel文件

  • 通过图形用户界面(GUI)创建和更改数据库的架构/结构

<强> CONS:

  • 当您使用Windev提供的数据库服务器(即HFSQL)时,您必须使用 Windev (强加给您)。 您无法使用Windev以外的其他语言/框架与数据库进行交互,您必须使用Windev来查询HFSQL数据库。如果您使用像PostgreSQL,mySQL / MariaDB等DBMS,您可以(并且将能够)使用其他语言查询数据库:C ++,Java,JavaScript等。 假设您现在想通过Web应用程序向客户打开数据,您实际上需要从他们的软件套件中使用他们的其他软件 Webdev (并实际购买)。 或者说,有一天,你想用Qt为智能手机开发一个简单的应用程序。好吧,如果您的数据库在HFSQL上运行,那么除非您使用Windev(实际上 Windev Mobile ,您还需要购买),否则您将无法查询数据库。
  • UNIQUE约束不适用于NULL(包含NULL的两行将被视为违反UNIQUE约束)。
  • (几乎)每次更新“分析/分析”(基本上是数据库模式)时,您还需要更新二进制可执行文件。您需要重新编译软件并将其再次分发给用户。例如,假设您通过添加列来修改表,或者修改列的类型,那么您需要重新编译。用户拥有的可执行文件将不会运行,它会说数据库上的“分析”(模式)版本与可执行文件中的版本不同,并且将停止。 BAM!
  • HyperFile SQL(HFSQL)服务器不是那么稳定,在执行稍微高级的查询而不是那么多行时会崩溃(通常)......
  • 您无法创建用于查询HFSQL数据库的脚本:您必须使用Windev创建二进制可执行文件(新项目)。假设你想快速修改一些东西 - &gt;你需要重新编译(并有一个Windev IDE)。
  • 假设你在旅途中,在某次旅行中,你忘了给你的电脑带上Windev Dongle键(许可加密USB密钥:你没有它,你不能运行Windev),你需要在数据库上做一些工作。 PCSoft提供了一个名为HFSQL Control Center(GUI软件)的软件,可以与数据库进行交互,但不幸的是它无法从互联网上下载。您实际上在购买Windev时获得它,并且您可以将其分发给您想要的人,但无法从PCSOFT网站下载。 如果你的数据库引擎是另一个,比如PostgreSQL或MariaDB,你可以简单地下载PGAdmin或等价物,然后繁荣,你可以与你的数据进行交互。
  • 在我看来,HFSQL不是真正的/真正的DBMS,让我自己解释一下:你可以在分析中设置的约束(例如UNIQUE)并不总是得到尊重。例如,在模式(分析)中添加UNIQUE约束并编译程序之后,我已经看到如果我在可执行文件的表中插入一些数据,它会在发生时检测到违反UNIQUE约束的情况。但是,如果我通过HFSQL控制中心插入相同的数据集,则不会强制执行约束,并且会重复执行重复操作。
  • 还有更多话要说......

底线:根据我自己的经验,我强烈建议任何想要开发可靠且可靠的软件的人,这些软件必须与Windev一起开发(并且需要数据持久性),而不是使用他们的数据库HFSQL。使用PostgreSQL或MariaDB等RDBMS会好得多。我们实际上将在今年夏天将我们的数据库从HFSQL移植到PostgreSQL。

答案 4 :(得分:1)

在WinDev Mobile 18及更高版本中,您可以在设备上使用Hyperfile。我推荐它,因为它更快,SQLLite将blob-size限制为1MB !!

@Spek在手机上使用HyperFile的内存?你能给我任何价值吗?我想如果你想制作一个完整的功能APP,你不能忽视HyperFile的好处......

答案 5 :(得分:0)

仅供参考:Windev第19版中的新功能:Hyperfile SQL是ACID。