|
1
39
您可以使用以下过程的名称作为参数和变量名称的前缀:
|
|
|
2
6
你所描述的叫做 variable shadowing . 它可以用任何语言发生。您得到了很好的解决方案,但常见的解决方案是设计一个命名方案,这样它就永远不会发生。
例如,命名没有前缀的列,并让变量具有取决于其范围的前缀。(
|
|
|
3
4
我找到了解决办法。它通过完全限定参数来工作:
|
|
|
4
3
Re-Vincent关于前缀的回答——这个解决方案一直有效,直到有人修改了表并添加了一个名恰好与参数名冲突的列。不是每个人都要检查每一行代码,以确保他们的表修改不会与变量或参数名冲突。Oracle的建议是限定SQL查询中的每个参数或变量名。 如果您使用的是匿名块(在过程之外),则可以用这种方式命名块并限定变量:
|
|
|
maddy · 如何根据oracle SQL中的某一列值进行排名 2 年前 |
|
|
kiric8494 · 显示以元音开头和结尾的城市名称 3 年前 |
|
|
Franz Biberkopf · Oracle:组合子查询和聚合函数 3 年前 |
|
|
BitLauncher · 甲骨文-如何模拟位列和布尔和/或? 3 年前 |
|
|
Arifullah · 如何从oracle中的列中删除特定的初始字符? 3 年前 |
|
|
Anar · Oracle SQL用户定义函数 3 年前 |
|
|
user1312312 · 如何为一组表编写通用触发器? 3 年前 |