oracle 怎么创建包含结构类型的字段
时间: 2023-09-04 14:07:23 浏览: 38
在Oracle中,可以使用自定义对象类型(Object Type)来定义包含结构类型的字段。
首先,需要创建一个对象类型,例如:
```sql
CREATE TYPE address_type AS OBJECT (
street VARCHAR2(100),
city VARCHAR2(50),
state VARCHAR2(50),
zip VARCHAR2(10)
);
```
然后,可以在表中使用该对象类型作为字段类型,例如:
```sql
CREATE TABLE customer (
id NUMBER PRIMARY KEY,
name VARCHAR2(100),
address address_type
);
```
这里的`address`字段就是一个结构类型的字段,类型为`address_type`。
在插入数据时,可以使用以下语句:
```sql
INSERT INTO customer (id, name, address) VALUES (1, 'John', address_type('123 Main St', 'Anytown', 'CA', '12345'));
```
这样就向表中插入了一个包含结构类型字段的记录。
在查询数据时,可以使用以下语句:
```sql
SELECT name, address.street, address.city, address.state, address.zip FROM customer WHERE id=1;
```
这样就可以查询出id为1的记录中的`name`和`address`字段的各个属性值。