2014-11-10 3 views
-2
CREATE TABLE Group 
(
group_name VARCHAR2(50) NOT NULL, 
date_joined DATE NOT NULL, 
refersTo VARCHAR2(40), 
CONSTRAINT g_group_name_pk PRIMARY KEY(group_name), 
CONSTRAINT g_refersTo_fk FOREIGN KEY(refersTo) REFERENCES Artist(artistic_name)); 

Это дает "Ошибка в строке 1: ORA-00903: неверное имя таблицы":Ошибка SQL: ORA-00903: неверное имя таблицы

CREATE TABLE Group 
      * 
+1

_Is_ 'Group' действительное имя таблицы? Возможно, вам нужно некоторое ускорение, например '' Group''? – CodeCaster

+0

Да, я сделал это с группой, но у меня такая же ошибка. – user3834262

+0

Группа - это зарезервированное слово в Oracle. См. Здесь полный список: https://docs.oracle.com/cd/B19306_01/appdev.102/b14354/appb.htm –

ответ

2

Поскольку группа является зарезервированным словом, вы должны бежать это с ". Дайте следующую попытку или переименуйте таблицу в другое:

CREATE TABLE "Group" 
(
group_name VARCHAR2(50) NOT NULL, 
date_joined DATE NOT NULL, 
refersTo VARCHAR2(40), 
CONSTRAINT g_group_name_pk PRIMARY KEY(group_name), 
CONSTRAINT g_refersTo_fk FOREIGN KEY(refersTo) REFERENCES Artist(artistic_name)); 
+0

Большое вам спасибо за помощь :) – user3834262

+2

Двойные кавычки вызывают всевозможные проблемы в приложениях. Почему бы просто не выбрать другое/лучшее имя? – APC

+0

Правда, лучше использовать другое имя. – user3834262

Смежные вопросы