oracle 报错 ora-00905

report如下,求大神来看看
在行: 99 上开始执行命令时出错 -
ALTER TABLE vet ADD CONSTRAINT vetpractice_vet_fk
FOREIGN KEY (vetpractice_no, pet_no, owner_no)
REFERENCES vetpractice (vetpractice_no, pet_no, owner_no)
ON DELETE NO ACTION
ON UPDATE NO ACTION
NOT DEFERRABLE
错误报告 -
SQL 错误: ORA-00905: 缺失关键字
00905. 00000 - "missing keyword"
*Cause:

*Action:

http://blog.sina.com.cn/s/blog_497f9dda0100bq0g.html
http://bbs.csdn.net/topics/380232679

http://www.educity.cn/wenda/601927.html
http://blog.sina.com.cn/s/blog_87fd9d98010189z6.html

这几篇点进去看看有没有帮助,
如果回答对你有帮助,请采纳。

此表的关键字没有包含外键,包含进去,就可以了。

ON DELETE NO ACTION
这个地方出问题了
10G 以前就有了. on delete set null 或者 on delete cascade,没用过ON DELETE NO ACTION
如果在建外键的时候,不加任何选项 默认就是 on delete no action

改为以下代码试试

ALTER TABLE vet ADD CONSTRAINT vetpractice_vet_fk
FOREIGN KEY (vetpractice_no, pet_no, owner_no)
REFERENCES vetpractice (vetpractice_no, pet_no, owner_no)
NOT DEFERRABLE