oracle drop type if exists
DECLARE
existing_type number;
BEGIN
SELECT count(*) into existing_type
FROM ALL_TYPES
WHERE TYPE_NAME = 'type_name' AND OWNER = 'schema_name';
IF existing_type = 1 then
EXECUTE IMMEDIATE 'DROP TYPE schema_name.type_name';
END IF;
END;