BYTE 数据类型以无差别字节流的形式存储任何种类的二进制数据。二进制数据通常
由数字化的信息(如,电子表格、程序装入模块和数字化声音模式等等)组成。
术语简单大对象指的是 BYTE 和 TEXT 数据类型。可以将相同表的不超过 195 列声
明为 BYTE 和 TEXT 数据类型。
BYTE 数据类型不具有最大大小。BYTE 列具有 2
31 个字节的理论限制和磁盘容量确定
的实际限制。
可以存储、检索、更新或删除 BYTE 列的内容。但是,不能在算术或字符串运算中使
用 BYTE 操作数,也不能使用 UPDATE 语句的 SET 子句将文字指定给 BYTE 列。也不能
通过以下任何方法使用 BYTE 项:
使用聚集函数
使用 IN 子句
使用 MATCHES 或 LIKE 子句
使用 GROUP BY 子句
使用 ORDER BY 子句
仅当您正在使用 IS NULL 或 IS NOT NULL 运算符测试 NULL 值时,BYTE 操作数在
布尔表达式中才有效。
GBase 8s SQL 指南:参考
南大通用数据技术股份有限公司 - 89 -
您可以使用以下可装入行或更新字段的方法来插入 BYTE 数据:
使用 dbload 或 onload 实用程序
使用 LOAD 语句 (DB-Access)
从 BYTE 主变量 (GBase 8s ESQL/C )
不能使用带引号的文本字符串、数字或任何其他实际值来插入或更新 BYTE 列。
当您选择 BYTE 列时,可以接收该列的全部或一部分。要检索整个列,使用选择列的
常规语法。还可以通过使用下标来选择 BYTE 列的任何部分,如下一示例所示,该示例读
取与目录号 10001 相关联的 cat_picture 列的前 75 个字节:
SELECT cat_picture [1,75] FROM catalog WHERE catalog_num = 10001
内置强制转型将 BYTE 值转换为 BLOB 值。有关更多信息,请参阅《GBase 8s 数据
库设计和实现指南》。
如果使用 DB-Access Interactive Schema Editor 选择 BYTE 列,那么仅返回字符
串“
要点: 如果您尝试从子查询中返回 BYTE 列,那么即使既未在布尔表达式中也未在
聚集中使用该列,也会导致错误。