mongo db
为什么不执行?它与我的前两个表配合使用,以供客户租用,但由雇员转为司机,它说:
“ Employee_ID”无效标识符,ORA-00904和00904 00000-无效 标识符
我以为我宣布了主要和外国?请允许我帮忙,我看过类似的询问,但是它们都具有与我相同的脚本。
答案 0 :(得分:1)
您的代码中有一些错误。 Here是db <> fiddle中的可用版本。
一些问题:
Employees
表需要先定义,然后才能在外键关系中使用。因此,表顺序错误。EmployeeId
需要在DriverTests
中声明。我将表的名称更改为复数,因为这就是我要为其命名的方式。
工作代码为:
CREATE TABLE Employees (
Employee_ID number(8),
Em_Name varchar2(50) NOT NULL,
Em_Address varchar2(50) NOT NULL,
Home_no number(15) NOT NULL,
Em_no varchar2(30) NOT NULL,
DoB date NOT NULL,
Gender varchar2(50) NOT NULL,
NI_no number(10) NOT NULL,
Annual_Salary number(10) NOT NULL,
CONSTRAINT pk_EmployeeID PRIMARY KEY(Employee_ID)
);
CREATE TABLE DriverTests (
DTest_ID number(8),
Employee_ID number(8),
DTest_Type varchar2(50) NOT NULL,
DTest_Date date NOT NULL,
DTest_Result varchar2(50) NOT NULL,
CONSTRAINT pk_DTestID PRIMARY KEY (DTest_ID),
CONSTRAINT fk_EmployeeData FOREIGN KEY (Employee_ID) REFERENCES Employees(Employee_ID)
);
答案 1 :(得分:0)
您的创建表顺序不正确。首先需要创建Employee表:
CREATE TABLE Employee
(Employee_ID number(8),
Em_Name varchar2(50) NOT NULL,
Em_Address varchar2(50) NOT NULL,
Home_no number(15) NOT NULL,
Em_no varchar2(30) NOT NULL,
DoB date NOT NULL,
Gender varchar2(50) NOT NULL,
NI_no number(10) NOT NULL,
Annual_Salary number(10) NOT NULL,
CONSTRAINT pk_EmployeeID PRIMARY KEY(Employee_ID));
CREATE TABLE DriverTest
(DTest_ID number(8),
DTest_Type varchar2(50) NOT NULL,
DTest_Date date NOT NULL,
DTest_Result varchar2(50) NOT NULL,
CONSTRAINT pk_DTestID PRIMARY KEY(DTest_ID));
CONSTRAINT fk_EmployeeData FOREIGN KEY (Employee_ID) REFERENCES (Employee_ID));