暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

GBASE分享关于 CLOB 数据类型、DATE 数据类型及 DATETIME 数据类型

郑小雯 2023-05-11
1053

 CLOB 数据类型


CLOB 数据类型以随机存取块(称为智能大对象空间)的形式存储任何种类的文本数据。 如果此信息也是文本的(例如,PostScript

(TM)、“超文本标记语言”(HTML)、“标准图形 标记语言”(SGML) 或“可扩展标记语言”(XML) 数据),那么文本数据可包括文本格式的 信息。 术语智能大对象指的是 CLOB 和 BLOB 数据类型。CLOB 数据类型支持对不适合 BLOB 值的字符串进行特殊运算。CLOB 值最长可为 4 太字节(4*240个字节)。分配给智能大对 象数据类型的最小磁盘空间量为 512 字节。 将 BLOB 数据类型(请参阅 BLOB 数据类型)用于随机访问二进制数据。有关 CLOB 和 BLOB 数据类型的常规信息,请参阅智能大对象。 以下 SQL 函数可以对 CLOB 列执行操作: FILETOCLOB 将文件复制到 CLOB 列。 LOTOFILE 将 CLOB(或 BLOB)值复制到文件中。 LOCOPY 将 CLOB(或 BLOB)值复制到新的智能大对象。 ENCRYPT_DES 或 ENCRYPT_TDES 从纯文本 CLOB 参数创建一个加密的 BLOB 值。 DECRYPT_BINAR 或 DECRYPT_CHAR 从加密的 BLOB 参数返回未加密的 BLOB 值 (该 ENCRYPT_DES 或 ENCRYPT_TDES 从纯文本 CLOB 值中创建)。 CLOB 数据没有任何强制转型。因此,除非使用这些加密和解密函数返回一个 BLOB, 否则数据库服务器无法将 CLOB 类型的数据转换为任何其他数据类型。在 SQL 中,只能对 CLOB 数据执行等于 ( = ) 比较运算。要执行其他运算,必须从客户机应用程序中使用某 种应用程序编程接口。

CLOB 类型的多字节字符

可以通过下列方法将数据插入到 CLOB 列: 使用 dbload 或 onload 实用程序 使用 LOAD 语句 (DB-Access) 从 CLOB (ifx_lo_t) 主变量 (ESQL/C) 有关 CLOB 类型的示例,请参阅 GBase 8s SQL 指南:教程。 对于 GLS,以下规则适用: 必须在数据库语言环境中定义多字节 CLOB 字符。 用代码集顺序整理 CLOB 数据类型。 数据库服务器处理 CLOB 数据的代码集转换。 有关数据库语言环境、整理顺序和代码集转换的更多信息,请参阅《GBase 8s GLS 用 户指南》。


DATE 数据类型

DATE 数据类型存储日历日期。DATE 数据类型需要四个字节。日历日期在内部存储 为等于自 1899 年 12 月 31 日以来的天数的整数值。

因为 DATE 值是作为整数存储的,所以可在算术表达式中使用这些值。例如,可以从 另一个 DATE 值中减去 DATE 值。结果(正或负 INTEGER 值)指示两个日期之间经过的天 数。(您可以使用 UNITS DAY 表达式来将结果转换成 INTERVAL DAY TO DAY 数据类型。) 以下示例显示 DATE 列的缺省显示格式: mm/dd/yyyy 在此示例中,mm 是月份 (1-12),dd 是月中某日 (1-31),yyyy 是年份 (0001-9999)。 可以通过设置 DBDATE 环境变量来指定不同的时间单位顺序和不同于 / 的时间单位分隔 符(或无分隔符)。有关更多信息,请参阅 DBDATE 环境变量。 在非缺省语言环境中,可以用特定于文化的格式显示日期。语言环境以及 GL_DATE 和

DBDATE 环境变量(如下一章中所述)影响 DATE 值的显示格式。但是,它们不影响数据库 中 DATE 列的内部存储格式。有关更多信息,请参阅《GBase 8s GLS 用户指南》。


 DATETIME 数据类型

DATETIME 数据类型会存储以日历日期和一天中的时间表示的瞬间时刻。

您选择存储 DATETIME 值的精确度;其精度范围可从一年到几分之一秒。 DATETIME 将数据值存储为在数据类型声明中表示每个时间单位(年、月和日等等)的 连续字段序列。 用于指定 DATETIME 数据类型的字段限定符具有以下格式: DATETIME largest_qualifier TO smallest_qualifier 这类似于 INTERVAL 字段限定符,但 DATETIME 表示时间点而不是时间范围(INTERVAL 表示时间范围)。DATETIME 和 INTERVAL 限定符之间存在如下差异: DATETIME 关键字替换 INTERVAL 关键字。 DATETIME 字段限定符不能指定 largest_qualifier 时间单位的非缺省精度。 DATETIME 数据类型的字段限定符可以包含 YEAR、MONTH 和更小的时间单位,而 包含 DAY 字段限定符(或更小时间单位)的 INTERVAL 数据类型不能还包含 YEAR 或 MONTH 字段限定符。 如果 smallest_qualifier 未指定大于 largest_qualifier 的时间单位,那么 DATETIME 数据类型的 largest_qualifier 和 smallest_qualifier 可以是下表列出的任 何字段。(最大和最小时间单位可以相同;例如,DATETIME YEAR TO YEAR。)  

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论