新聞中心
這里有您想知道的互聯網營銷解決方案
創(chuàng)新互聯OceanBase教程:OceanBase引用對象類型的屬性和方法
要在 SQL 語句中引用對象類型屬性或方法,必須使用表別名完全限定該引用。以下示例中樣本 Schema ob 包含類 cust_address_typ 和表 customers,customers 擁有一個 cust_address_typ 類型的列 cust_address:

CREATE TYPE cust_address_typ
OID '82A4AF6A4CD1656DE034080020E0EE3D'
AS OBJECT
(street_address VARCHAR2(40),
postal_code VARCHAR2(10),
city VARCHAR2(30),
state_province VARCHAR2(10),
country_id CHAR(2));
/
CREATE TABLE customers
(customer_id NUMBER(6),
cust_first_name VARCHAR2(20) CONSTRAINT cust_fname_nn NOT NULL,
cust_last_name VARCHAR2(20) CONSTRAINT cust_lname_nn NOT NULL,
cust_address cust_address_typ,
. . .
在 SQL 語句中,對 postal_code 屬性的引用必須使用表別名進行完全限定,如下所示:
SELECT c.cust_address.postal_code
FROM customers c;
UPDATE customers c
SET c.cust_address.postal_code = '610000'
WHERE c.cust_address.city = 'chengdu'
AND c.cust_address.state_province = 'SICHUAN';
要引用不接受參數的成員方法,必須提供空括號。例如,樣本 Schema ob 包含一個基于 catalog_typ 的對象表 category_tab,該表包含成員函數 ?getCatalogName?。為了在 SQL 語句中調用此方法,必須提供空括號,如下所示:
SELECT TREAT(VALUE(c) AS catalog_typ).getCatalogName() "Catalog Type"
FROM categories_tab c
WHERE category_id = 10;
返回結果:
+----------------+
| Catalog Type |
+----------------+
| online catalog |
+----------------+
本文名稱:創(chuàng)新互聯OceanBase教程:OceanBase引用對象類型的屬性和方法
新聞來源:http://fisionsoft.com.cn/article/dpsshds.html


咨詢
建站咨詢
