#在SQL中有什么意义?

时间:2011-05-05 18:35:33

标签: sql oracle plsql oracle10g

我有以下代码在Oracle(PL ??)

中创建对象类型
CREATE OR REPLACE TYPE STAFF_T as OBJECT(Staff_ID# NUMBER, Person PERSON_T); \

我想知道声明中附加到Staff_ID变量的#的重要性是什么?

3 个答案:

答案 0 :(得分:10)

没有特别的意义。

Oracle允许在标识符中使用$_#,就像任何其他字母数字字符一样,但标识符应以字母字符(字母)开头。

答案 1 :(得分:3)

这是列名Staff_ID#的一部分。井号是PL / SQL中标识符(表/列名)的允许部分。见here

答案 2 :(得分:2)

编写代码的人可能并不意味着#。

但#对Oracle来说显然意味着什么,虽然我不知道是什么。来自SQL Language Reference

  

Oracle强烈反对你   在非引用中使用$和#   标识符

以下是警告内容的一些猜测:

  • 它与一个非常古老的虫子有关 警告至少会回到Oracle 7)
  • Oracle计划用它做点什么 它将来的verison
  • 那个角色 不适用于Oracle支持的所有键盘,字符集或平台

数据字典大量使用数字符号,据我所知,它对用户对象起作用。但为了安全起见,您可能希望将其删除。

相关问题