SqlDbx Forum

SqlDbx

You are not logged in.

#1 2015-12-22 12:15:22

ptoniolo
Member

Synonyms are filtered using the TABLE_OWNER column

The list of synonyms should include only the OWNER=<currentuser> of the view DBA/ALL_SYNONYMS.

But in the list you show in the UI (and in the script produced by Tool/GenerateScripts) you also add the names obtained from TABLE_OWNER=<currentuser>!
This is wrong, because that column specifies the "target" of the synonym! i.e., what the OWNER schema is seeing of the objects in the current schema, and this is not a matter of the current schema, in any way...

The effect of this is that if some other schema has defined a synonym to an object in my schema, with the same name as the object itself (why not? it is defined in another schema!), when I generate the scripts the "create synonym" will overwrite the definition of the object itself in the folder, because synonyms are exported as a last step.

I know that you can include the object/owner schema in the filename, but this is normally not necessary form Oracle schemas, and anyway the presence of the synonyms obtained with the filter on TABLE_OWNER is really out of place here!

Thanks
Pietro

Offline

#2 2016-01-14 12:34:32

ptoniolo
Member

Re: Synonyms are filtered using the TABLE_OWNER column

Maybe I was not clear.

I believe that the list of synonyms, both the left pane and the scripts generated, should include only the OWNER=<currentuser>.
The current sqldbx code (4.12) also includes the synonyms defined in other schemas that point to objects in <currentuser>.

I strongly believe this approach to be incorrect.

Thanks
Pietro

Offline

#3 2016-04-19 12:45:08

ptoniolo
Member

Re: Synonyms are filtered using the TABLE_OWNER column

For what I can see, this problem has been fixed in the current 4.15 version.

Thanks to the team!
Pietro

Offline

Board footer

Powered by FluxBB