我可以使用
动态删除临时表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#
中的例外答案 0 :(得分:1)
是的,它受支持,但是你会收到警告,因为在动态SQL中使用DDL会被认为是有问题的。 基本上,您希望避免在SQL脚本中进行架构更改。 对于临时表,无论如何都不需要丢弃它们。
如果这是一个问题,可以通过TRUNCATE TABLE轻松释放内存。
另一方面,您的C#程序应学会处理和区分错误和警告。您在此处收到的消息是警告,并不代表错误。
如果您无法做到这一点,那么您仍然可以使用大锤方法解决问题:通过设置indexserver参数来关闭警告 sqlscript - dynamic_sql_ddl_error_level = 0
这当然是不推荐,因为您可能会错过其他警告。