在SAP HANA中动态删除临时表时会抛出警告

时间:2017-02-21 22:30:42

标签: c# hana

我可以使用

动态删除临时表
EXEC 'DROP TABLE '||:schemaname||'.'||:tablename;   

其中schemaname和tablename作为过程中的输入获得。

问题:我收到警告说

Not recommended feature: DDL statement is used in Dynamic SQL (current dynamic_sql_ddl_error_level = 1)

由于这个警告,当我使用这个程序时,我在C#中遇到异常。

动态SQL中是否支持DROP?帮助我从SAP HANA处理此问题,或者至少跳过此警告,使其成为C#

中的例外

1 个答案:

答案 0 :(得分:1)

是的,它受支持,但是你会收到警告,因为在动态SQL中使用DDL会被认为是有问题的。 基本上,您希望避免在SQL脚本中进行架构更改。 对于临时表,无论如何都不需要丢弃它们。

如果这是一个问题,可以通过TRUNCATE TABLE轻松释放内存。

另一方面,您的C#程序应学会处理和区分错误和警告。您在此处收到的消息是警告,并不代表错误。

如果您无法做到这一点,那么您仍然可以使用大锤方法解决问题:通过设置indexserver参数来关闭警告 sqlscript - dynamic_sql_ddl_error_level = 0

这当然是推荐,因为您可能会错过其他警告。