我应该更改哪些设置才能使Teradata用CREATE TABLE
查询替换现有表格?
目前,如果表存在,则尝试CREATE
会导致错误。所以在创建之前我必须DROP
表。
THX
答案 0 :(得分:1)
REPLACE PROCEDURE DROP_IF_EXISTS(IN table_name VARCHAR(60),IN db_name VARCHAR(60))
BEGIN
IF EXISTS(SELECT 1 FROM dbc.tables WHERE databasename=db_name AND tablename=table_name)
THEN
CALL DBC.SysExecSQL('DROP TABLE ' || db_name ||'.'|| table_name);
END IF;
END;
在您的DDL脚本中:
call drop_if_exists('$your_table_name','$your_db_name')
;
database $your_db_name;
create table $your_table_name ...
;