Ошибка SQL: ORA-00922: отсутствует или неверен параметр создания составного ключа - PullRequest
0 голосов
/ 08 декабря 2011

Я пытаюсь создать составной первичный ключ для моей таблицы, используя emp_id и licence_cert_no, почему это не работает?

CREATE TABLE employee_licence_certificate(emp_id NUMBER(4) REFERENCES employee(emp_id)
, licence_cert_code VARCHAR2(6) REFERENCES licence_certificate(licence_cert_code)
, date_earned DATE NOT NULL) 
CONSTRAINT pk_emp_licence PRIMARY KEY(emp_id, licence_cert_code)

Сообщение об ошибке:

Error starting at line 1 in command:
CREATE TABLE employee_licence_certificate(emp_id NUMBER(4) REFERENCES employee(emp_id)
, licence_cert_code VARCHAR2(6) REFERENCES licence_certificate(licence_cert_code)
, date_earned DATE NOT NULL) 
CONSTRAINT pk_emp_licence PRIMARY KEY(emp_id, licence_cert_code)
Error at Command Line:3 Column:29
Error report:
SQL Error: ORA-00922: missing or invalid option
00922. 00000 -  "missing or invalid option"
*Cause:    
*Action:

1 Ответ

4 голосов
/ 08 декабря 2011

Предложение CONSTRAINT должно заключаться в круглые скобки:

CREATE TABLE employee_licence_certificate(
  emp_id NUMBER(4) REFERENCES employee(emp_id)
, licence_cert_code VARCHAR2(6) REFERENCES licence_certificate(licence_cert_code)
, date_earned DATE NOT NULL
, CONSTRAINT pk_emp_licence PRIMARY KEY(emp_id, licence_cert_code)
);

( ссылка )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...