pl/sql 中的以下声明类型有啥区别?

Posted

技术标签:

【中文标题】pl/sql 中的以下声明类型有啥区别?【英文标题】:What is the difference in following declaration types in pl/sql?pl/sql 中的以下声明类型有什么区别? 【发布时间】:2011-10-15 20:49:45 【问题描述】:

1: 名称 varchar2(30):='uu' || '&(企业名称)'; 2: 名称 varchar2(30):='uu' || '&emp 名称';

我不明白 () 有什么不同。 在第一种情况下 name = uu&(emo name and 在第二种情况下,它会提示用户输入值。 请任何人解释一下这背后的概念。

【问题讨论】:

【参考方案1】:

SQL*Plus 解释以&&& 开头并由字母和数字组成的名称(类似于普通标识符)。这些名字是variable usages;除非已经定义,否则这些将被用户输入替换。

请注意,第一行中& 之后的( 不是字母数字字符,因此 SQ*Plus 不会检测到变量引用。

在顶部添加set define off 以禁用此功能。

【讨论】:

以上是关于pl/sql 中的以下声明类型有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

“类型”和“子类型”关键字有啥区别?

oracle 的 PL/SQL 中的 & 和 : 有啥区别?

将PL/SQL代码封装在机灵的包中

如何在选择语句的“NOT IN”子句中使用逗号分隔的字符串列表作为 pl/sql 存储的函数参数

Windows 64位 安装Oracle instantclient 官方绿色版和PL/SQL Developer 总结

这个 PL/SQL 有啥问题?绑定变量 * 未声明