如何在SAP HANA中删除临时表的内容?

如何在SAP HANA中删除临时表的内容?,sap,temp-tables,delete-row,hana,Sap,Temp Tables,Delete Row,Hana,我通过以下方式在SAP HANA中创建临时表: create local temporary table #sometable(table definition); 但是,此表不支持delete语句。i、 电话: delete from #sometable; 将抛出一个错误: feature not supported 在存储过程中使用此表时,内容将与新数据连接,而不是替换为新数据。我如何解决这个问题 您使用的HANA版本是什么?在最新的修订版68中,它可以正常工作: ;dro

我通过以下方式在SAP HANA中创建临时表:

  create local temporary table #sometable(table definition);
但是,此表不支持delete语句。i、 电话:

 delete from #sometable; 
将抛出一个错误:

 feature not supported

在存储过程中使用此表时,内容将与新数据连接,而不是替换为新数据。我如何解决这个问题

您使用的HANA版本是什么?在最新的修订版68中,它可以正常工作:

;drop table #sometable;
create local temporary table #sometable(id integer, str nvarchar(30));

insert into #sometable values (1,'one');
insert into #sometable values (2,'two');
insert into #sometable values (3,'three');

select * from #sometable;  --> returns 3 rows
delete from #sometable;
select * from #sometable;  --> returns 0 rows

我最近也遇到了同样的问题,并在以下方面找到了下一个解释:

可以为@Catalog.tableType注释定义以下值:

3) #全球#临时

设置所创建表的范围。全局临时表中的数据是特定于会话的;只允许全局临时表的所有者会话插入/读取/截断数据。在会话期间存在全局临时表,并且在会话终止时自动删除全局临时表中的数据。只有当全局临时表中没有任何记录时,才能删除该表

这意味着您可以使用truncate清除临时表:

truncate table #sometable;