W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
當(dāng)在 SQL 語句中引用對象時,OceanBase 會考慮 SQL 語句的上下文并在適當(dāng)?shù)拿Q空間中找到該對象。找到對象后,OceanBase 執(zhí)行 SQL 語句對該對象指定的操作。如果在適當(dāng)?shù)拿Q空間中找不到命名的對象,則返回錯誤。
以下示例說明了 OceanBase 如何解析 SQL 語句中對象的引用。
執(zhí)行以下語句,向名為 departments 的表中添加了一行數(shù)據(jù):
INSERT INTO departments
VALUES (280, 'ENTERTAINMENT_CLERK', 206, 1700);
根據(jù) SQL 語句的上下文,departments 在數(shù)據(jù)庫中可能是:
OceanBase 始終會先嘗試在您自己的 Schema 中的名稱空間里解析被引用對象,然后再考慮該 Schema 之外的名稱空間。在此示例中,OceanBase 嘗試解析如下:
如果公共同義詞包含任何依賴表或用戶定義類型,則不能在與依賴對象相同的 Schema 中創(chuàng)建與同義詞同名的對象。
反之,如果同義詞沒有任何依賴表或用戶定義的類型,則可以在與依賴對象相同的 Schema 中創(chuàng)建具有相同名稱的對象。OceanBase 會使所有依賴對象無效,并在下一次訪問它們時重新驗證它們。
要引用您的 Schema 之外的 Schema 中的對象,需要在對象名稱前添加 Schema 名稱:
schema.object
例如,以下示例展示了在名為 hr 的 Schema 中刪除表 employees:
DROP TABLE hr.employees;
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: