create table Course(
cid int  ,
name varchar(100)   not null,
primary key(cid)
)
go
create table Test(
tid int identity(1,1) primary key,
sub varchar(100)   foreign key references Course(name),
con varchar(2000) not null,
A varchar(1000) not null,
B varchar(500) not null,
C varchar(500) not null,
D varchar(500) not null,
anw varchar(10) not null)

解决方案 »

  1.   

    create       table       Course(   
    cid       int           ,   
    name       varchar(100)               not       null,   
    primary       key(cid)   
    )   
    go   
    create       table       Test(   
    tid       int       identity(1,1)       primary       key,   
    sub       varchar(100)               foreign       key       references       Course(name),   
    con       varchar(2000)       not       null,   
    A       varchar(1000)       not       null,   
    B       varchar(500)       not       null,   
    C       varchar(500)       not       null,   
    D       varchar(500)       not       null,   
    anw       varchar(10)       not       null) 
    你COURSE   表的主键为   CID 
    但是你   TEST   SUB   列的外键引用的为   COURSE表的   NAME列   该列不为主键 
    所以报错
      

  2.   

    create   table   Course(
    cid   int     ,
    name   varchar(100)       not   null,
    primary   key(cid)
    )
    go
    create   table   Test(
    tid   int   identity(1,1)   primary   key,
    sub   varchar(100)       foreign   key   references   Course(cid),--此处改为cid吧
    con   varchar(2000)   not   null,
    A   varchar(1000)   not   null,
    B   varchar(500)   not   null,
    C   varchar(500)   not   null,
    D   varchar(500)   not   null,
    anw   varchar(10)   not   null)