在本节中,我们将简要概述 SAP HANA 数据库用于处理临时数据的概念。
表变量用于在概念上表示 SQLScript 过程的数据流中的表格数据。在执行期间,此数据可能实例化为内部表,也可能不会实例化到内部表中。这取决于应用于 SQLScript 过程的优化。其主要用途是构建 SQLScript 逻辑。
临时表是在会话生命周期内存在的表。一个连接可以有多个会话。在大多数情况下,断开连接和重新建立连接用于终止会话。全局临时表的模式对多个会话可见。但是,此表中存储的数据对每个会话都是私有的。相反,对于本地临时表,模式和数据在当前会话外均不可见。在大多数方面,临时表的行为类似于常规列表。
持久数据结构类似于序列,仅在过程调用中使用。但是,序列始终是全局定义的,并且是可见的(假设权限正确)。对于临时使用 - 即使存在并发调用过程,也可以生成命名模式以避免序列。然后可以使用动态 SQL 创建此类序列。