我们在 Oracle 表定义 (DDL) 和我们的一个 PL/SQL 脚本中遇到了一个特殊问题。
问题是,表中发生了变化,从varchar(20)
变为varchar(30)
,但是这种变化并没有认真地反映在我们的一个消费数据的 PL/SQL 脚本中,这仍然是,在我们的一个回归测试中varchar(20)
导致错误。ORA-06502: PL/SQL: numeric or value error
我想在这里向Oracle和数据库专家寻求建议,您过去是否遇到过这种情况,即表DDL发生了变化,并且没有反映在PL/SQL中,以及您如何处理这个差距。
我知道一种简单的方法是某种形式的强制执行或文书工作,但是否会有更漂亮或优雅的解决方案,即外键的工作方式以避免插入/更新/删除异常?
感谢!