【问题标题】:How to Create a Foreign Key from a Table to a Custom Datatype如何创建从表到自定义数据类型的外键
【发布时间】:2012-11-19 20:31:46
【问题描述】:
使用 Oracle Express 11g,学习对象关系数据库的交互。
在尝试从普通表创建外键到自定义对象(客户)表时遇到问题
客户对象如下(customer_id NUMBER, fname VARCHAR2, lname VARCHAR2),对于我们的设置,我们希望通过customer_id NUMBER 加入表应用程序。在 SQL Workshop 中,甚至无法选择customers 表,而且我们找不到手动创建这种关系的语法。
任何专家有一些线索可以帮助解决这个问题吗?
【问题讨论】:
标签:
oracle
database-design
user-defined-types
data-integrity
object-relational-model
【解决方案1】:
create or replace type customer is object
(
customer_id NUMBER,
fname VARCHAR2(100),
lname VARCHAR2(100)
);
/
create table customers of customer
(
constraint customer_pk primary key(customer_id)
);
create table applications
(
application_id number,
customer_id number,
constraint applications_fk1 foreign key (customer_id)
references customers(customer_id)
);