sql语句创建外键出错,使用的SQL server 2008

norra_1020 2015-11-02 12:44:00
表teacher:
create table teacher
(
tno char(8) NOT NULL,
tname char(8) NOT NULL,
sex char(2) NULL,
birthday smalldatetime NULL,
dno char(6) NULL,
pno tinyint NULL,
home varchar(40) NULL,
zipcode char(6) NULL,
tel varchar(40) NULL,
email varchar(40) NULL,
constraint pk_teacher primary key(tno)
)
go
表course:
create table course
(
cno char(10) NOT NULL,
spno char(8) NULL,
cname char(20) NOT NULL,
ctno tinyint NULL,
experiment tinyint NULL,
lecture tinyint NULL,
semester tinyint NULL,
credit tinyint NULL,
constraint pk_course primary key(cno)
)
go
表teacher_course:
create table teacher_course
(
tcid smallint NOT NULL,
tno char(8) NOT NULL,
spno char(8) NULL,
classno char(4) NULL,
cno char(10) NOT NULL,
semester char(6) NULL,
schoolyear char(10) NULL,
classtime varchar(40) NULL,
classroom varchar(40) NULL,
weektime tinyint NULL,
constraint pk_teacher_course primary key(tcid)
foreign key(tno) references teacher(tno)
foreign key(cno) references course(cno)
)
go
在teacher_course表中创建外键tno和cno,运行时报错“消息 156,级别 15,状态 1,第 14 行
关键字 'foreign' 附近有语法错误。”
是为什么
谢谢各位~
...全文
166 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
LongRui888 2015-11-02
  • 打赏
  • 举报
回复
加上逗号,要不就直接在后面写: create table teacher_course ( tcid smallint NOT NULL, tno char(8) NOT NULL foreign key references teacher(tno), spno char(8) NULL, classno char(4) NULL, cno char(10) NOT NULL foreign key references course(cno), semester char(6) NULL, schoolyear char(10) NULL, classtime varchar(40) NULL, classroom varchar(40) NULL, weektime tinyint NULL, constraint pk_teacher_course primary key(tcid) )
Tiger_Zhao 2015-11-02
  • 打赏
  • 举报
回复
所有定义的项目(无论是字段还是Key)之间都要加逗号
...,
constraint pk_teacher_course primary key(tcid),
foreign key(tno) references teacher(tno),
foreign key(cno) references course(cno)
)

22,300

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧