0

我有 Oracle 18c 数据库。假设我有一个PUBLIC SYNONYM S_Customerfor 表database1.Customer

CREATE OR REPLACE PUBLIC SYNONYM S_Customer for database1.Customer;

如果在 18c 中锁定统计信息S_Customer,收集统计信息database1.Customer会引发错误 Oracle?

根据https://oraclespin.com/2008/10/09/how-to-lockunlock-statistics-on-a-table/ ,如果我锁定表上的统计信息,则收集锁定表上的统计信息会引发错误。

我想知道当我收集表的统计信息(而不是同义词)时,锁定表的同义词上的统计信息是否也会引发相同的错误。

4

1 回答 1

0

您不能锁定同义词的统计信息,只能锁定表。该过程的名称很清楚:LOCK_TABLE_STATS文档说“表”,并且快速测试证实了这一点:

CREATE TABLE customer (id NUMBER, name VARCHAR2(50));

CREATE SYNONYM s_customer FOR customer;

exec dbms_stats.lock_table_stats(user, 's_customer');

ORA-20000: TABLE "SO"."S_CUSTOMER" does not exist or insufficient privileges
于 2018-09-28T21:55:02.060 回答