我有以下代码在Oracle(PL ??)
中创建对象类型CREATE OR REPLACE TYPE STAFF_T as OBJECT(Staff_ID# NUMBER, Person PERSON_T); \
我想知道声明中附加到Staff_ID变量的#的重要性是什么?
答案 0 :(得分:10)
没有特别的意义。
Oracle允许在标识符中使用$
,_
和#
,就像任何其他字母数字字符一样,但标识符应以字母字符(字母)开头。
答案 1 :(得分:3)
这是列名Staff_ID#
的一部分。井号是PL / SQL中标识符(表/列名)的允许部分。见here
答案 2 :(得分:2)
编写代码的人可能并不意味着#。
但#对Oracle来说显然意味着什么,虽然我不知道是什么。来自SQL Language Reference:
Oracle强烈反对你 在非引用中使用$和# 标识符
以下是警告内容的一些猜测:
数据字典大量使用数字符号,据我所知,它对用户对象起作用。但为了安全起见,您可能希望将其删除。