ORA-01605: missing numbers in clause “string” of string
Cause: The numbers were missing for this parameter.
Action: Correct the INIT.ORA parameter and restart the instance.
ORA-01605错误指的是在给定的字符串类型的句子中缺少必要的数字。官方的解释是:“指定的数字定义小于期望的值,该句子可能没有反应你所期望的语义”。
常见的案例如:执行一些修改表的操作时,例如在ALTER TABLE给出字段定义时,给定的长度不够,这时会报ORA-01605错误。比如:
SQL> alter table emp add column sal number(7) not null;
alter table emp add column sal number(7) not null
*
ERROR at line 1:
ORA-01605: missing numbers in clause
1.首先,检查表中是否已经存在相同的列,如果已存在,则在ALTER TABLE前加上IF NOT EXISTS,当表中没有该列时才会创建。
2.再检查输入的语句是否正确,确保没有缺少任何字符或者括号,然后再使用。
3.最后,重新检查输入的列定义是否正确,比如数字或字符串长度跟实际情况不符等,做修改后在使用该句进行执行。