Skip to content

Commit 6197a05

Browse files
committed
update drop type
1 parent dfa4ed6 commit 6197a05

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

oracle/migrator.go

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -496,11 +496,16 @@ func (m Migrator) CreateType(typeName, typeKind, typeof string) error {
496496

497497
// DropType drops an Oracle user-defined type safely.
498498
func (m Migrator) DropType(typeName string) error {
499-
if typeName == "" {
500-
return fmt.Errorf("DropOracleType: typeName is required")
501-
}
499+
sql := fmt.Sprintf(`
500+
BEGIN
501+
EXECUTE IMMEDIATE 'DROP TYPE "%s" FORCE';
502+
EXCEPTION
503+
WHEN OTHERS THEN
504+
IF SQLCODE != -4043 THEN
505+
RAISE;
506+
END IF;
507+
END;`, strings.ToLower(typeName))
502508

503-
sql := fmt.Sprintf(`DROP TYPE "%s" FORCE`, strings.ToLower(typeName))
504509
return m.DB.Exec(sql).Error
505510
}
506511

0 commit comments

Comments
 (0)