蓝布编程网

分享编程技术文章,编程语言教程与实战经验

还在为找SQLite替代品发愁?嵌入式InterBase非常适合移动应用

#在头条记录我的2025#

如果您开发移动用程序,正在寻找一个功能齐全的强大数据库,但需要它支持全强度加密无需支付额外费用,那么嵌入式数据库InterBase就是最佳的选择。InterBase功能齐全的强大数据库,它可以在您的移动应用程序中轻松使用,重要的是,与SQLite不同,它支持全强度加密无需支付额外费用,InterBase不仅可以在几乎所有平台上工作,包括移动设备,而且可以免费使用。

为什么SQLite可能不是移动应用的最佳选择

毫无疑问,SQLite是简单数据库的一个非常受欢迎的选择。它免费使用,开源,并且无处不在,你可以在你能想到的每一个平台上找到它。但是SQLite有一个问题;如果您希望存储在SQLite数据库中的数据被加密,您需要支付非免费SQLite加密扩展的年费。根据官网的说明,这目前花费每年2500美元。因此,SQLite实际上并不“免费”。如果您使用IBToGo,即Embarcadero的InterBase数据库的嵌入式版本,它包含对整个数据库进行完全强大的256位AES加密在列级别,关键还是免费的。

如何安装免费的InterBase组件?

打开RAD Studio IDE并单击“工具”菜单。从那里选择“管理功能”。

如果有必要,现在向下滚动列表。然后确保InterBase选项被选中,如下所示。

在这之后,你应该在面板中得到一些额外的组件。您还可以使用FireDAC也连接到数据库。开发控件还是还是很全的。

如何创建一个新的InterBase数据库?

当您安装InterBase选件时,它也会安装IBConsole工具。这是一个强大的实用程序,允许您创建和管理InterBase服务器和数据库。您可以通过点击Windows“开始”按钮,然后键入“IB”来找到它,然后只需点击“打开”。

已经有一个很好的说明如何使用IBConsole的指导信息集合。您可以从以下登录页面找到它
:https://docwiki.embarcadero.com/InterBase/2020/en/IBConsole,在YouTube频道上搜索InterBase,链接如下:https://www.youtube.com/@EmbarcaderoTech/search?query=interbase那里有丰富的内容。是个很好学习资源。

如何将数据库嵌入到我的移动应用程序中?

首先,使用IBConsole应用程序创建数据库。记下数据库文件的位置,它很可能以“.ib”houzhui结尾。您可以通过在IBConsole中右键单击数据库名称,然后从弹出菜单中选择“properties”来找到该文件的路径。

然后,在RAD工作室,打开您的项目和工程,选择项目, 部署,您可以添加应用程序正常运行所需的其他文件或驱动程序。我们需要添加两样东西:InterBase的驱动程序和许可证以及实际的数据库文件,这样它们就可以被复制到用户设备上的正确位置。

如何向您的移动应用添加额外的驱动程序和嵌入式数据库

从部署的下拉列表中选择您的目标平台——Android、iOS等。选中该平台后,点击“add featured files”。这将允许我们添加InterBase驱动程序和IBLite/IBToGo许可证。

如何将外部文件或数据库添加到您的移动应用程序

您可以使用部署窗口告诉RAD Studio您想要嵌入或随移动应用程序一起发布的任何附加文件。要向您的移动应用程序添加文件,请单击add按钮,然后选择您从IBConsole记下的数据库文件,如前面的屏幕截图所示。

对于面向iOS或Android的移动应用程序,您需要采取一个额外的步骤,那就是正确地指定“远程路径”,以便将物理数据库文件部署到移动操作系统规则允许的位置。对于Android,这是assets–>internal文件夹。对于iOS,这是Startup–>Documents文件夹。

在代码中,您可以更新数据库连接的数据库属性,如下所示:

  • 对于iOS: TPath.Combine(TPath.GetDocumentsPath, 'database_filename.ib');
  • 对于Android(当您选择“internal”时): TPath.Combine(TPath.GetDocumentsPath, 'database_filename.ib');
  • 对于Android(当您选择“external”时): TPath.Combine(TPath.GetPublicPath, 'database_filename.ib');

当使用InterBase IBX组件时,运行时引用数据库的行如下所示:MyDatabase.DatabaseName := TPath.Combine(TPath.GetDocumentsPath, 'database_filename.ib');

但对于FireDAC,情况略有不同:MyDatabase.Params.Values['database'] := TPath.Combine(TPath.GetDocumentsPath, 'database_filename.ib');

请注意,这几乎是仅仅FireDAC和InterBase Express IBX数据库组件集之间使用的代码差异。

您还可以使用部署窗口上传您的IBToGo许可证(它以文本文件的形式出现,您只需将它与您的应用程序一起部署,即可获得的完整功能集)。桌面用户也可以看看IBToGo订阅,也可以使用它。

Delphi的老粉们,又可以一展拳脚了。也许嵌入式数据库InterBase是您移动应用的最佳选择。

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言