select synonym_name,table_owner,table_name from user_synonyms /
1、owner指的是同义词student的所属用户,如果是public则表明,
所有用户都可以使用该同义词(前提是它有访问同义词所指的原始对象的权限),
table_owner指的是表student所属的用户是user_1
2、系统没有sp_changeobjectowner存储过程。不要手工修改数据字典。
3、你要想修改为user_2,这样
在user_2下建立student表
create table user_2.student as select * from user_1.student;
删除原来的同义词
drop synonym student;
建立public的同义词
create public synonym student for user_2.student;
处理失效同义词
第一步,先找到失效的同义词
SELECT A.OWNER,
A.OBJECT_NAME,
A.OBJECT_TYPE,
A.CREATED,
A.LAST_DDL_TIME,
A.STATUS,
A.TIMESTAMP,
SYSDATE AS "查詢時間"
FROM DBA_OBJECTS a
WHERE A.STATUS = 'INVALID'
第二步:
如果不再需要,直接删除
drop synonym a.table;
如果有需要必须执行
create or replace synonym a.table for a.table