在proc sql中删除多个表(通过teradata)

wljmcqd8  于 2021-07-26  发布在  Java
关注(0)|答案(2)|浏览(414)

我试图删除多个表,使用以下代码,但它引发了一个错误。
代码:

PROC SQL ;
        CONNECT TO teradata AS TERADATA (server=dbc  mode=teradata) ;
        EXECUTE (drop table TABLE_NAME1, TABLE_NAME2, TABLE_NAME3  ) BY teradata ;
        DISCONNECT FROM teradata ;
    QUIT ;

错误:语法错误:应在name1和table之间

c6ubokkw

c6ubokkw1#

如果你看一下文档 drop 在teradata中,您将看到它只在一个表上运行:
根据指定的关键字,从数据字典中删除指定表的定义,并从其包含的数据库或用户中删除对象。
大多数数据库都是这样工作的。你需要做三滴:

drop table TABLE_NAME1;
drop table TABLE_NAME2;
drop table TABLE_NAME3;
aor9mmx1

aor9mmx12#

您可以使用一个命令删除数据库中的所有对象:

DELETE DATABASE name_database;

但是视图、触发器、存储过程、用户定义函数和宏也将被删除。

相关问题