Мисля, че искате следното. Моля, обърнете внимание, че вероятно трябва да използвате VARCHAR2 вместо VARCHAR в Oracle. Те работят по същия начин в момента, но има възможност Oracle да промени функционалността за VARCHAR за да го приведе в съответствие със стандарта ANSI (в който празни низове '' се различават от NULL s ... но се отклоних):
CREATE TABLE client
( id NUMBER(10) NOT NULL PRIMARY KEY
, name VARCHAR2(30) NOT NULL
, surname VARCHAR2(30) NOT NULL
, phone NUMBER(11) NOT NULL
, email VARCHAR2(70) );
CREATE TABLE boss
( b_surname VARCHAR2(30) NOT NULL PRIMARY KEY
, b_Name VARCHAR2(30) NOT NULL );
И след това:
ALTER TABLE client ADD CONSTRAINT boss_client_fk FOREIGN KEY (surname) REFERENCES boss (b_surname);
Малко е странно, че колоната се казва surname в CLIENT и b_surname в BOSS .
Ако искате b_surname в BOSS за препратка към surname в CLIENT -- тогава трябва да направите CLIENT.surname първичен ключ или поне уникален.