第一个表
create table t_user(user_id varchar2(10) primary key,
user_name varchar2(20) not null,
password varchar2(20),
contact_tel varchar2(30),
email varchar2(30),
create_date date);
第二个表
create table t_client (id number(4) primary key,
pid number(4) not null,
name varchar2(30) not null,
client_id varchar2(10),
client_level char(3),
bank_acct_no varchar2(30),
contact_tel varchar2(30),
address varchar2(30),
zip_code varchar2(10),
is_leaf char(1) default 'Y' check (is_leaf in('Y','N')),
is_client char(1) default 'N' check (is_client in('Y','N')
));
第三个表create table t_flow_card_master(vou_no varchar2(16) primary key,
fiscal_year number not null,
fiscal_period number not null,
client_id varchar2(10) references t_client(client_id) not null, //////////// 为什么我这样创建外键不对 提示我ORA-02270: 此列列表的唯一或主键不匹配
opr_type char(1) default 'A' check (opr_type in('A','D')),
record_date Date not null,
recorder_id varchar2(10)references t_user(user_id) not null,
vou_sts char(1) default 'N'check (vou_sts in('N','S')),
confirmer_id varchar2(10)references t_user(user_id),
conf_date Date,
spotter_id varchar2(10) references t_user(user_id),
spot_date Date,
spot_re varchar2(60),
spot_flag char(1) default 'N' check (spot_flag in ('Y','N')),
adjust_time Date,
adjuster_id varchar2(10) references t_user(user_id)
);
create table t_user(user_id varchar2(10) primary key,
user_name varchar2(20) not null,
password varchar2(20),
contact_tel varchar2(30),
email varchar2(30),
create_date date);
第二个表
create table t_client (id number(4) primary key,
pid number(4) not null,
name varchar2(30) not null,
client_id varchar2(10),
client_level char(3),
bank_acct_no varchar2(30),
contact_tel varchar2(30),
address varchar2(30),
zip_code varchar2(10),
is_leaf char(1) default 'Y' check (is_leaf in('Y','N')),
is_client char(1) default 'N' check (is_client in('Y','N')
));
第三个表create table t_flow_card_master(vou_no varchar2(16) primary key,
fiscal_year number not null,
fiscal_period number not null,
client_id varchar2(10) references t_client(client_id) not null, //////////// 为什么我这样创建外键不对 提示我ORA-02270: 此列列表的唯一或主键不匹配
opr_type char(1) default 'A' check (opr_type in('A','D')),
record_date Date not null,
recorder_id varchar2(10)references t_user(user_id) not null,
vou_sts char(1) default 'N'check (vou_sts in('N','S')),
confirmer_id varchar2(10)references t_user(user_id),
conf_date Date,
spotter_id varchar2(10) references t_user(user_id),
spot_date Date,
spot_re varchar2(60),
spot_flag char(1) default 'N' check (spot_flag in ('Y','N')),
adjust_time Date,
adjuster_id varchar2(10) references t_user(user_id)
);
解决方案 »
- orcale select 视图时rownum 问题(急)
- 数据块在以下时间/行号处损坏: Sat Mar 17 06:57:54 2012/19245。
- 动态返回%ROWTYPE
- 根据数据库文件查询数据库详细版本信息
- 着急的很
- ORACLE9i的最低配置是什么?
- 昨天买了一台笔记本电脑,不能装ORACLE数据库,
- 怎样使用存储过程(包、函数等方式)定期自动(人工)备份数据库和人工导出数据库?
- 怎么从oracle存储过程中传出参数?
- 求救:import数据库时出错,小弟第一次用oracle,请指教
- 在pl/sql developer中,怎么把自定义函数添加进用户名下?
- 求Oracle下存储过程的教程
你引用的必须是t_client该表的主键
如果要在B表上引用A表的字段ID来创建一个外键,那么A表的ID上必须有主键(也就是说Id必须是A表的主码)
这时,你看看你的A表上是不是由多个属性共同构成一个主码?如果是,那么你就要使ID变成A表的单独主码。
2,你还没有指定 client_id外间关联哪个表的主键呢?