列存在,但程序看不到



我创建了3个表,但在最后一个表中显示错误

CREATE TABLE Student
(
St_Id char(7) PRIMARY KEY,
St_Fname varchar(15) NOT NULL,
St_Lname varchar(20) NOT NULL,
St_DOB date
)

CREATE TABLE Course
(
Course_code char(5) PRIMARY KEY,
Course_title varchar(30) NOT NULL,
Course_credit INTEGER NOT NULL
)

CREATE TABLE Registration 
(
Reg_no INTEGER  PRIMARY KEY AUTOINCREMENT ,
FOREIGN KEY (St_Id) REFERENCES Student(St_Id),
FOREIGN KEY (Course_code) REFERENCES Course(Course_code),
Mark_obtaines INTEGER
)

,错误为

执行已完成,但出现错误。结果:未知列";St_ Id";在里面外键定义第1行:CREATE TABLE注册(Reg_noINTEGER主键自动递增,外键(St_Id(参考学生(St_Id(,

为了定义外键,您需要首先定义列,并且类型需要与引用表中的类型匹配:

CREATE TABLE Registration  (
Reg_no INTEGER PRIMARY KEY AUTOINCREMENT,
St_Id CHAR(7),
Course_Code CHAR(5),
FOREIGN KEY (St_Id) REFERENCES Student(St_Id),
FOREIGN KEY (Course_code) REFERENCES Course(Course_code),
Mark_obtaines INTEGER
);

然后FOREIGN KEY声明提供了有关该列的更多信息。

最新更新