本人刚学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 基础的书籍?我要学习,谢谢大家啦

解决方案 »

  1.   


    --创建一个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 )
        ) ;
      

  2.   

    Cpno少了小括号create table Course
    (
      Cno char(4) primary key,
      Cname char(40),
      Cpno char(4),
      Ccredit smallint,
      foreign key (Cpno) references Course(Cno)
    );