The pl / sql dollar operator?

This morning I met the following ddl in a pl / sql script:

create index genuser.idx $$ _ 0bdd0011 ...

My initial thought was that the index name was generated by the tool ... but I'm not a pl / sql superstar either, so I could very well be wrong. Does the double dollar sign have any special meaning in this statement?

+3
source share
3 answers

Your initial thought seems correct. It will look like the index name generated by the tool (but not assigned by Oracle because the index name is not specified). Dollar signs do not have any special meaning, except for valid characters, which are rarely used by human developers, so they are convenient for reducing the risk that the name generated by the system conflicts with the human name.

+2
source

There is no particular significance or significance.

SQL> create table t (col number)
  2  /

Table created.

SQL> create index idx$$_0bdd0011 on t(col)
  2  /

Index created.

Note. CREATE INDEX is a DDL statement that is usually executed in an SQL script, and not in PL / SQL.

+2
source

Source: https://habr.com/ru/post/1697693/


All Articles