二进制字符串

二进制字符串 是字节序列。 与通常包含文本数据的字符串不同,二进制字符串用于保存非传统数据,例如图片。 二进制字符串的长度是序列中的字节数。 二进制字符串的 CCSID 为 65535。 只有 FOR BIT DATA 的字符串与二进制字符串兼容。

固定长度的二进制字符串

定义固定长度的二进制字符串单值类型,列和变量时,将指定长度属性,并且所有值的长度都相同。 对于固定长度的二进制字符串,长度属性必须介于 1 到 32 766 (含) 之间。 请参阅 SQL 限制 以获取更多信息。

变长二进制字符串

变长二进制字符串的类型为:

  • VARBINARY
  • BLOB

二进制大对象 (BLOB) 列对于存储大量非字符数据 (例如图片,语音和混合介质) 很有用。 另一个用途是保存结构化数据,以供不同类型和用户定义的函数使用。

单值类型,列和变量都具有长度属性。 定义变长二进制字符串单值类型,列和变量时,将指定最大长度,这将成为长度属性。 实际值的长度可能较小。 对于变长二进制字符串, length 属性必须介于 1 到 32 740 字节之间 (包括在内)。 对于 BLOB 字符串,长度属性必须介于 1 到 2 (包括 147 483 647) 之间。 请参阅 SQL 限制 以获取更多信息。

二进制字符串变量

可以在除 REXX , RPG/400®和 COBOL/400以外的所有主语言中定义具有二进制字符串类型的变量。

  • 可以在除 REXX , RPG/400和 COBOL/400以外的所有主语言中定义 BINARY 固定长度二进制字符串变量。
    • 在 ILE RPG 中,使用 SQLTYPE 关键字声明 BINARY 固定长度二进制字符串变量。
    • 在所有其他语言中,将使用 SQL TYPE IS BINARY 子句。
  • 可在除 REXX , RPG/400和 COBOL/400以外的所有主语言中定义 VARBINARY 变长二进制字符串变量。
    • 在 ILE RPG 中,使用 SQLTYPE 关键字声明 VARBINARY 变长二进制字符串变量。
    • 在所有其他语言中,将使用 SQL TYPE IS VARBINARY 子句。
  • BLOB 变长二进制字符串变量可以在除 REXX , RPG/400和 COBOL/400以外的所有主语言中定义。
    • 在 ILE RPG 中,使用 SQLTYPE 关键字声明 BLOB 变长二进制字符串变量。
    • 在所有其他语言中,将使用 SQL TYPE IS BLOB 子句。