Delphi/C++ Builder拥有数组和FireDAC的InterBase数据库

2022-06-29 00:00:00 数据 专区 的是 数组 多维

长久以来,InterBase数据库一直提供使用数组的可能性。

什么是数组?
数组是一列中相同类型的一维或多维数据存储。这些可以与除BLOB之外的所有标准数据类型一起用于InterBase。

什么时候应该使用/什么时候不使用?
数组可以很容易地定义。但是您应该注意何时使用它们以及何时应该变得更好:

数组的数据类型相同
数组的数据用作逻辑(数据属于同一类)和物理(一列存储;在公共事务控制下)单元。
优点是由于事务控制而减少了负载:您可以在单个事务中简单地读取并保存一张颈椎枕数据幻灯片(一维/多维)到数组中。后者可能会带来明显的性能优势

数组的应用完成作为的扩展CREATE TABLE或CREATE DOMAIN:

CREATE TABLE TBL_ARRAY
(
ID INTEGER,
TICTACTOE BOOLEAN[1:3, 1:3]
);
此处在一列中定义了“井字游戏”字段。

带有/带有FireDAC,在Delphi IDE中看起来像这样:






(从数据浏览器查看)




在一个应用程序内。(普通DBGrid和3x3 DBCheckBox)

应该注意的是,首先要遍历数组中的行/行,然后是列/列。例如,Fortran期望列/行顺序。

从柏林10.1开始,DBGrid还可以正确显示一个数组!

程序对数组元素的访问
可以通过基于0的元素直接访问数组元素。在这里交替:

Tbl_arrayTable.Edit;
Tbl_arrayTable.FieldByName('TICTACTOE[0]').Value := NOT Tbl_arrayTable.FieldByName('TICTACTOE[0]').AsBoolean;
有什么要考虑的?
不幸的是,InterBase控制台无法显示数组



————————————————
版权声明:本文为CSDN博主「xyzhan」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/xyzhan/article/details/105551034

相关文章