关于hyperfile db的建议

Leo*_*Leo 5 database windev

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

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

问候!

小智 7

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

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

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

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


Rob*_*ood 5

补充 Samu\xc3\xabl Tremblay 已经写过的内容,我想说的是,在使用 Windev 和 HFSQL(旧名称是 HyperFile SQL)两年多之后,以下是我的结论(我使用过 Windev 版本 20 和 22):

\n\n

优点:

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

  • \n
  • 轻松导出查询/表的 Microsoft Excel 文件

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

  • \n
\n\n

缺点:

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

底线:根据我自己的经验,我强烈鼓励任何想要开发“必须”使用 Windev 开发(并且需要数据持久性)的可靠且可靠的软件的人,不要使用他们的数据库 HFSQL。使用 RDBMS(例如 PostgreSQL 或 MariaDB)会更好。实际上,今年夏天我们将把数据库从 HFSQL 移植到 PostgreSQL。

\n