在 proc sql 中删除多个表(通过 teradata)
drop multiple tables in proc sql (via teradata)
我尝试使用以下代码删除多个表,但出现错误。
代码:
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
之间的内容
如果您在 Teradata 中查看 drop
的 documentation,您会发现它仅在一个 table:
上运行
Drops the definition for the specified table from the data dictionary and drops the object from its containing database or user, depending on the keyword specified.
大多数数据库都是这样工作的。你需要做三滴:
drop table TABLE_NAME1;
drop table TABLE_NAME2;
drop table TABLE_NAME3;
您可以使用一条命令删除数据库中的所有对象:
DELETE DATABASE name_database;
而且视图、触发器、存储过程、用户定义的函数和宏也将被删除。
我尝试使用以下代码删除多个表,但出现错误。
代码:
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
之间的内容如果您在 Teradata 中查看 drop
的 documentation,您会发现它仅在一个 table:
Drops the definition for the specified table from the data dictionary and drops the object from its containing database or user, depending on the keyword specified.
大多数数据库都是这样工作的。你需要做三滴:
drop table TABLE_NAME1;
drop table TABLE_NAME2;
drop table TABLE_NAME3;
您可以使用一条命令删除数据库中的所有对象:
DELETE DATABASE name_database;
而且视图、触发器、存储过程、用户定义的函数和宏也将被删除。