日期:2014-05-18  浏览次数:20633 次

简单的建表出错,求解
本人刚学sql,按照课本的建立一个关于学生课程的表,和课本上的一样的,可是在sql server 2008 上运行出错,其代码:
create table Course
(
  Cno char(4) primary key,
  Cname char(40),
  Cpno char(4),
  Ccredit smallint,
  foreign key Cpno references Course(Cno)
);


错误为:
消息 102,级别 15,状态 1,第 7 行
'Cpno' 附近有语法错误。



另外请问有没有关于sql server 2008 基础的书籍?我要学习,谢谢大家啦



------解决方案--------------------
SQL code

--创建一个course1
create table course1
(
  cno char(4) primary key,
  cname char(40),
  cpno char(4),
  ccredit smallint
);
go
--创建一个course2的外键为course1的cno
create table course2
    (
      cno char(4) primary key ,
      cname char(40) ,
      cpno char(4) ,
      ccredit smallint ,
      foreign key ( cpno ) references course1 ( cno )
    ) ;

------解决方案--------------------
Cpno少了小括号

create table Course
(
Cno char(4) primary key,
Cname char(40),
Cpno char(4),
Ccredit smallint,
foreign key (Cpno) references Course(Cno)
);