假设你有这个程序:
PROCEDURE f (param VARCHAR2) IS var VARCHAR2(10); BEGIN var := 'hi'; END f;
我想理解为什么var需要指定长度,但param不需要.我很难在oracle文档中找到有关这方面的信息.
“Oracle数据库从调用过程的环境中获取参数的长度,精度和比例.”
请查看此related question.
参考:Oracle® Database SQL Reference 10g Release 2 (10.2)请查看semantics / argument / datatype.