&符号(主变量)之后的DOT(。)&考虑作为变量名的一部分?
Posted
技术标签:
【中文标题】&符号(主变量)之后的DOT(。)&考虑作为变量名的一部分?【英文标题】:DOT(.) after Ampersand (host variable)& considering as a part of variable name? 【发布时间】:2010-04-12 18:18:06 【问题描述】:我知道标题不太清楚。这是图片
我正在使用 &a,它认为它是 $a。 , 在输出 &a 和 &a 中。给出相同的输出。以及为什么 &a 之后的单个 .(DOT) 没有给出错误,但是如果我们在 &a 之后放置任何字符、运算符或通配符会给出错误。
这是代码。
BEGIN
FOr i in &&a...3 LOOP
DBMS_OUTPUT.PUT_LINE(i||' '||&a.||' '||&a);
END LOOP;
END;
输出来了
1 1 1
2 1 1
3 1 1
【问题讨论】:
【参考方案1】:点是&
定义的分隔符。在大多数情况下,您不会注意到差异,但如果您由于某种原因在变量名后没有空格或类似的名称,则可能会导致混淆。例如,如果您在字符串'&asomething'
中将某些内容与您的变量连接起来,它会要求一个名为“asomething”的变量。如果您以'&a.something'
执行此操作,那么它将要求一个名为“a”的变量,并在提供的任何值的末尾添加“某物”。 &a
之后的任何其他字符都将被视为变量名称的一部分,或者如果它作为名称的一部分无效,则会导致错误。
【讨论】:
以上是关于&符号(主变量)之后的DOT(。)&考虑作为变量名的一部分?的主要内容,如果未能解决你的问题,请参考以下文章