2

我正在编写一个 DB2 用户定义函数,我需要一个非负整数数组,我将其表示为 bit data 的 varchar。我计划为每个整数使用两个字节(给我一个最大值 2^16-1,这是可以接受的)。

我可以使用chr函数将整数转换为位数据的字符,但是如何将其恢复为整数?

有关 DB2 过程中位操作的任何其他建议也会有所帮助,因为我似乎找不到太多关于它的文档。我在 Linux 上使用 v9.1。

4

1 回答 1

2

我不确定 CHR 是否真的是你想要的。根据文档,CHR 功能:

返回具有参数指定的 ASCII 码值的字符。参数可以是 INTEGER 或 SMALLINT。参数的值应该在 0 到 255 之间;否则,返回值为空。

CHR 函数的反面是ASCII 函数。

DB2 标量过程的完整列表在这里

我不确定以这种方式编写 UDF 是否最适合您尝试做的事情。您可能需要考虑编写不在 SQL 中的存储过程。有一个支持的语言列表,如 Java、C、C++ 等。

于 2009-03-09T16:55:37.663 回答