我的问题的原因是我有一个SQL脚本,它使用易失性表(我没有创建常规表的权限)在多个阶段构建结果。我创建了我的第一个volatile表来尝试保持脚本的部分模块化,然后第二个表使用第一个,第三个和第二个的结果集,然后继续使用。
然后我使用Tableau构建我的数据的可视化,将脚本的create volatile table
部分放在Initial SQL部分中,然后我只是从volatile中做select
我的请求中的表。问题是Teradata ODBC客户端返回错误:
3576数据定义无效,除非是单独的
每次尝试这个时我都没有这个问题,所以我想知道是什么促使这种情况发生,所以我想知道,Teradata中的“数据定义语句”是什么。有时我使用这种方法,它工作正常,其他人没有,我似乎无法弄明白。
答案 0 :(得分:3)
DDL语句显然是CREATE
或DROP
,还有COLLECT STATISTICS
和DATABASE ...
命令。
每个DDL语句必须是单独提交的=具有单个语句的请求=独立事务。
如果您有权访问QueryLog,则可能会检查发送给Teradata的实际SQL,从而导致该错误。