oracle建立用户同义词

分类:近义词反义词同义词浏览量:3255发布于:2021-06-13 21:31:54

oracle建立用户同义词

在B用户下创建同义词,也可以在系统用户下创建全局同义词.

1.你可能需要在user用户中给当前用户(user2)授权: grant select/delete/update on user2 创建同义词:create public synonym table_name for user.table_name;2.删除同义词: drop public synonym table_name; 3.查看所有同义词: select * from dba_synonyms

有2种办法:其中之一就是你说的同义词,在你的用户中建立到A的同义词,当用户A换成用户B的时候,修改同义词即可.之二,就是用databaselink,代码中写成表名@dblink,视图名@dblink 等等这样当用户A换成用户B时,只要修改dblink的用户A到用户B 即可,修改的量较小.

使用存储过程或函数来实现,首先查出用户tsdba下所有的表名,存放至游标中,然后在循环创建同义词就好了

必须先有建同义字权限语法create synonym 名字 for 所有者.对象名

相当于alias(别名),比如把user1.table1在user2中建一个同义词table1 create synonym table1 for user1.table1; 这样当你在user2中查select * from table1时就相当于查

错误截图看看 通过test2访问的话 什么权限都可以的,因为同义词是不可以修改的

展开全部1.你可能需要在user用户中给当前用户(user2)授权: grant select/delete/update on user2 创建同义词:create public synonym table_name for user.table_name;2.删除同义词: drop public synonym table_name; 3.查看所有同义词: select * from dba_synonyms

要使用department用户创建.如果department和employee是同一个库不同表空间./** for 用户名.表名 */ create public synonym synonym_name for department.部门表;如果department和employee不是同一个库.那么还需要加上部门所在库的database link./** for 用户名.表名@资源连接 */ create public synonym synonym_name for department.部门表@link_name;

函数创建不了同义词 表、视图、同义词、序列、存储过程、包可以