我在Oracle 10g中创建了一个对象类型(地址 - 城市,州)。然后表cust_contact包含类型为address的字段。任何人都可以提供SQL查询来插入和检索此表中的值,包括类型?
答案 0 :(得分:4)
选择很简单。只需在查询投影中包含type列即可。假设ADDRESS列名为contact_address:
select id, contact_name, contact_address
from cust_contact
/
使用插入,您需要在语句中指定类型:
insert into cust_contact values
(some_seq.nextval
, 'MR KNOX'
, address(34, 'Main Street', 'Whoville', 'SU')
)
/
答案 1 :(得分:0)
您也可以使用“。”检索列时的语法:
从cust_contact c;
中选择c.contact_address.city请注意,如果cust_contact是一个对象表,那么必须使用表别名“c”。
答案 2 :(得分:0)
例如: 首先创建类型对象说为地址,对于此synatx或查询使用: 创建类型address_ty作为对象(街道varchar2(50),城市字符(10),邮编(6));
现在在创建表时使用此address_ty作为数据类型 例如: create table示例(emp_name varchar2(10),emp_id number(10),address address_ty); 这将创建表示例 地址为address_ty作为数据类型..
现在插入示例表中的值 插入示例值('Sandeep Kumar',595,address_ty('捕捉扇区126','诺伊达',201301);
... THANX