如何处理超过允许的最大值 2000 的 CHARACTER 变量?
How to deal with CHARACTER variables, longer than the allowed maximum of 2000?
我正在使用 Progress-4GL、appBuilder 和程序编辑器,版本 11.6。
我刚找到一个CHARACTER
类型的全局变量(DEF VAR global_variable AS CHAR NO-UNDO.
),最多包含12901个字符。该变量仅用于在应用程序内传递信息,信息永远不会作为一个元组存储在 table.
中
那个变量里面的信息好像处理的不错:内容是正确的。
然而,正如this URL提到的,Progress中的字符变量的最大长度为2000个字符,这让我担心:我担心有一天,可能会超过另一个限制,从那接下来,我们需要重新考虑整个想法,我想为那一天做好准备。
因此,有人知道 Progress 中字符变量的“下一个”长度限制吗?
您提到的参考文献指出 SQL 限制。
在 ABL 中,一个 CHARACTER 变量可以容纳 ~ 32 k
DEFINE VARIABLE c AS CHARACTER NO-UNDO.
ASSIGN c = FILL ("*", 31000) .
MESSAGE LENGTH (c)
VIEW-AS ALERT-BOX INFORMATION BUTTONS OK.
除此之外,您还必须使用 LONGCHAR,但它有以下限制:
- 稍慢
- 无法在临时表或数据库表中编制索引。
CHARACTER 变量始终存储在 CPINTERNAL 代码页中。 LONGCHAR 可以通过 FIX-CODEPAGE 语句使用不同的代码页。
我正在使用 Progress-4GL、appBuilder 和程序编辑器,版本 11.6。
我刚找到一个CHARACTER
类型的全局变量(DEF VAR global_variable AS CHAR NO-UNDO.
),最多包含12901个字符。该变量仅用于在应用程序内传递信息,信息永远不会作为一个元组存储在 table.
那个变量里面的信息好像处理的不错:内容是正确的。
然而,正如this URL提到的,Progress中的字符变量的最大长度为2000个字符,这让我担心:我担心有一天,可能会超过另一个限制,从那接下来,我们需要重新考虑整个想法,我想为那一天做好准备。
因此,有人知道 Progress 中字符变量的“下一个”长度限制吗?
您提到的参考文献指出 SQL 限制。
在 ABL 中,一个 CHARACTER 变量可以容纳 ~ 32 k
DEFINE VARIABLE c AS CHARACTER NO-UNDO.
ASSIGN c = FILL ("*", 31000) .
MESSAGE LENGTH (c)
VIEW-AS ALERT-BOX INFORMATION BUTTONS OK.
除此之外,您还必须使用 LONGCHAR,但它有以下限制:
- 稍慢
- 无法在临时表或数据库表中编制索引。
CHARACTER 变量始终存储在 CPINTERNAL 代码页中。 LONGCHAR 可以通过 FIX-CODEPAGE 语句使用不同的代码页。