2015-11-27 3 views
1

В настоящее время я занимаюсь лабораторией для школы и не могу за всю жизнь понять, почему я получаю эти ошибки (в частности, 2). Первая ошибка, которую я выбрал, - это то, что в таблице «счет-фактура» ограничение PRIMARY KEY запрашивает вторую правую круглую скобку. Вторая ошибка, которую я получаю, заключается в создании таблицы «invprod», где он утверждает мне, что «invno» на самом деле не существует.Таблицы не создаются? Синтаксическая проблема?

Я не знаю, является ли это ошибкой в ​​моем синтаксисе или нет, но любая помощь очень ценится.

CREATE TABLE invoice 
(invno CHAR(5) NOT NULL 
,invdate DATE 
,orderno CHAR(5) NOT NULL 
,CONSTRAINT invorder FOREIGN KEY (orderno) 
      REFERENCES salesorder(orderno) 
,CONSRAINT pkinvoice PRIMARY KEY (invno) 
); 

CREATE TABLE invprod 
(invno CHAR(5) NOT NULL 
,partno CHAR(4) NOT NULL 
,shipqty INTEGER CHECK (shipqty>0) 
,CONSTRAINT fk1invprod FOREIGN KEY(invno) 
     REFERENCES invoice(invno) 
,CONSTRAINT fk2invprod FOREIGN KEY(partno) 
     REFERENCES part(partno) 
); 
+0

Вы должны использовать редактор с подсветкой синтаксиса. Опечатка в определении таблицы INVOICE четко отображается в сообщении здесь, потому что StackOverflow выделяет ключевые слова. И как только вы сможете создать таблицу INVOICE, ваша вторая ошибка исчезнет, ​​как по волшебству. – APC

ответ

3

Вы опечатка CONSRAINT должны быть CONSTRAINT:

CREATE TABLE invoice 
(
    invno CHAR(5) NOT NULL 
,invdate DATE 
,orderno CHAR(5) NOT NULL 
,CONSTRAINT invorder FOREIGN KEY (orderno) 
      REFERENCES salesorder(orderno) 
,CONSTRAINT pkinvoice PRIMARY KEY (invno) 
); 

SqlFiddleDemo

+0

СПАСИБО СМОТРЕТЬ! Глупая ошибка! Должно быть, надоело! У меня все еще возникают проблемы с invprod, которые не создаются из-за невозможности найти счет-фактуру ... Я не знаю, видите ли вы что-нибудь там, – kabloo12

+0

Большое вам спасибо! Это определило мою первую проблему! – kabloo12

+0

@ kabloo12 Сначала создайте таблицу и заказ клиента, затем счет-фактуру и invprod в конце – lad2025

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