CREATE TEXT TABLE IF NOT EXISTS PPE_COMMON_LOG (LOG_ID int PRIMARY KEY,COMP_NAME varchar(50),LOG_EVENT varchar(50),LOG_LEVEL varchar(30),LOG_MSG varchar(200),LOG_DATETIME datetime,LOG_ERROR_CODE varchar(80) );
Select COUNT(*) as "TCOUNT" From INFORMATION_SCHEMA.SYSTEM_TABLES Where TABLE_NAME = 'PPE_COMMON_LOG';
CASE TCOUNT WHEN 0 then
SET TABLE PPE_COMMON_LOG SOURCE "PPE_COMMON_LOG.csv;ignore_first=true;all_quoted=true";
SET TABLE PPE_COMMON_LOG SOURCE HEADER "LOG_ID,COMP_NAME,LOG_EVENT,LOG_LEVEL,LOG_MSG,LOG_DATETIME,LOG_ERROR_CODE";
END CASE;
它给出了"意外的令牌:CASE in statement [CASE]"
答案 0 :(得分:0)
CASE TCOUNT WHEN 0的块不正确。您不能在SQL中编写CASE语句来执行其他SQL语句。
如果只想在某些情况下执行SET TABLE语句,具体取决于INFORMATION_SCHEMA中的内容,则在Java中执行SELECT并检查返回计数并根据返回计数执行其他SQL语句。