2017-10-23 2 views
-1

私のSQLテーブルが正常に動作しなくなりました。それは私に、許可がないか存在しないためにテーブルを削除できないというエラーを与え続けます。そしてそれは無効なテーブルがあることを私に伝えています。私のSQLデータベースにエラーが発生しました

は、私が現在持っている:

drop table Orders 
drop table Item 
drop table Supplier 
drop table Staff 
drop table Customers 
drop table Ingredient 



CREATE TABLE Supplier(
SupplierNo CHAR(7) PRIMARY KEY, 
SupplierName CHAR(25), 
SupplierAddress VARCHAR(25), 
SupplierPhone CHAR(10), 
SupplierContactPerson CHAR (35) 
) 
go 


CREATE TABLE Item (
ItemNo  CHAR(7)  PRIMARY KEY, 
ItemName CHAR(10), 
ItemType CHAR(10), 
Price  DEC(3,2), 
IngredientCode CHAR (5), 

FOREIGN KEY(IngredientCode) REFERENCES Ingredient(IngredientCode) 
) 
go 

CREATE TABLE Staff (
EmployeeID CHAR(3) PRIMARY KEY, 
FirstName CHAR(10), 
LastName CHAR(10), 
PostalAddress VARCHAR(MAX), 
ContactNumber CHAR (10), 
RateOfPay  MONEY, 
EmployementStatus CHAR(25) 
) 

CREATE TABLE Customers (
CustomerID CHAR(4) PRIMARY KEY, 
CustomerFN CHAR(25), 
CustomerLN CHAR(25), 
CustomerPhN CHAR(11), 
CAddress VARCHAR (25) 
) 
go 

CREATE TABLE Ingredient(
IngredientCode CHAR (5) PRIMARY KEY, 
IngredientName CHAR(25), 
IngredientDesc VARCHAR(max), 
CurrentStockLevel CHAR(3), 
PreviousStockLevel CHAR(3), 
SuggestedStockLevel CHAR(3), 
SupplierNo CHAR(7), 
Supplied DATE(), 

FOREIGN KEY(SupplierNo) REFERENCES Supplier(SupplierNo) 
) 

CREATE TABLE Orders(
OrderNo CHAR(7), 
OrderDate DATE(), 
CustomerNo CHAR(4) FOREIGN KEY, 
EmployeeID CHAR(3) FOREIGN KEY, 
ItemNo  CHAR(7) FOREIGN KEY, 
TypeOfOrder CHAR(10), 
TotalAmount MONEY(), 
PaymentMethod CHAR(10), 
OrderStatus CHAR(10) 

FOREIGN KEY CustomerNo, EmployeeID, ItemNo 
REFERENCES Customer(CustomerNo), Staff(EmployeeID), Item(ItemNo) 
) 

それは持っている非常に単純な問題のように思えるが、私はそれは私が何の権限を持たないか、テーブルが全く存在しないと何を意味するのかさえわからないんだけど...

+0

を参照し、文がterminする必要があります';'とatedします。また、どの[DBMS](https://en.wikipedia.org/wiki/DBMS)製品を使用していますか? "_SQL_"はクエリ言語であり、特定のデータベース製品の名前ではありません。 –

+0

使用されている実際のDBMSにかかわらず、 'CustomerNo CHAR(4)FOREIGN KEY、'が間違っています。その外部キーの_target_を指定する必要があります。 'CustomerNo CHAR(4)は顧客を参照します。正しい構文については、DBMSのマニュアルをお読みください –

+0

これは何ですか? CREATE TABLE Orders( OrderNo CHAR(7), OrderDate DATE(), CustomerNo CHAR(4) FOREIGN KEY REFERENCES Customer(CustomerNo), EmployeeID CHAR(3) FOREIGN KEY REFERENCES Staff(EmployeeID), ItemNo \t \t CHAR(7) FOREIGN KEY REFERENCES Item(ItemNo), TypeOfOrder CHAR(10), TotalAmount MONEY(), PaymentMethod CHAR(10), OrderStatus CHAR(10) straysheep17

答えて

0

あなたは制約を作成し、前にテーブルを作成する成分

FOREIGN KEY(IngredientCode)はSQLで成分(IngredientCode)

関連する問題