2 Отдельные вопросы.
-
Я использую этот script для удаления таблицы [SOLVED]
BEGIN EXECUTE IMMEDIATE 'DROP TABLE_NAME'; DBMS_OUTPUT.PUT_LINE ('Global table TABLE_NAME Dropped'); EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE ('Global table TABLE_NAME Doesn''t exist.'); END; /
В любом случае, я могу различать, если таблица "не существует" или используется в некоторых других сеансах (в этом случае она блокируется и не может быть удалена). Я не уверен, могу ли я видеть, что таблица существует в user_tables. Я не полностью осведомлен о разрешениях.
Я добавил этот код сейчас
WHEN OTHERS THEN
i_code := SQLCODE;
v_errm := SUBSTR(SQLERRM, 1, 64);
if i_code = -942 THEN
DBMS_OUTPUT.PUT_LINE ('TABLE_NAME doesn''t exist. Script will continue to create it');
ELSE
DBMS_OUTPUT.PUT_LINE ('Error dropping temporary table. The error code is ' || i_code || '- ' || v_errm);
END IF ;
2. Я вижу . в конце каждой процедуры, подобной этой
END PROCEDURE_NAME;
.
/
sho err;
Я просто не понимаю, почему . здесь. Это синтаксис или что?