create table Department
( Dname varchar(7) not null ,
Dnumber char(2) primary key not null ,
Dleader varchar(3) not null,
Dleaderc varchar(11) unique
)
create table Student
( Sname varchar(3) not null ,
Snumber varchar(7) primary key not null,
Ssex char(1) check(Ssex='b' or Ssex='g'),
Sdob datetime check(Sdob>='1900' and Sdob<='2100'),
Sadress char(4) not null,
Smobile varchar(11) not null ,
Sdepartment varchar(7) not null,
foreign key (Sdepartment) references Department(Dname)
)
create table Course
( Cname varchar(5) not null ,
Cnumber varchar(2) primary key not null ,
Cst int ,
Cgrade smallint not null ,
Cteacher varchar(3) not null
)
create table Studentc
( Sname varchar(3) not null ,
Snumber varchar(7) primary key not null ,
Cname varchar(5) not null unique,
Cgrade int check(Cgrade>=’100’ and Cgrade<=’00’) ,
foreign key (Sname) references Student(Sname) ,
foreign key (Cname) references Course(Cname)
)
我建表Student[出现下面的错误提示
color=#FF0000]SQL提示如下:
消息 1776,级别 16,状态 0,第 1 行
在被引用表 'Department' 中没有与外键 'FK__Student__Sdepart__49C3F6B7' 中的引用列列表匹配的主键或候选键。
消息 1750,级别 16,状态 0,第 1 行
无法创建约束。请参阅前面的错误消息
( Dname varchar(7) not null ,
Dnumber char(2) primary key not null ,
Dleader varchar(3) not null,
Dleaderc varchar(11) unique
)
create table Student
( Sname varchar(3) not null ,
Snumber varchar(7) primary key not null,
Ssex char(1) check(Ssex='b' or Ssex='g'),
Sdob datetime check(Sdob>='1900' and Sdob<='2100'),
Sadress char(4) not null,
Smobile varchar(11) not null ,
Sdepartment varchar(7) not null,
foreign key (Sdepartment) references Department(Dname)
)
create table Course
( Cname varchar(5) not null ,
Cnumber varchar(2) primary key not null ,
Cst int ,
Cgrade smallint not null ,
Cteacher varchar(3) not null
)
create table Studentc
( Sname varchar(3) not null ,
Snumber varchar(7) primary key not null ,
Cname varchar(5) not null unique,
Cgrade int check(Cgrade>=’100’ and Cgrade<=’00’) ,
foreign key (Sname) references Student(Sname) ,
foreign key (Cname) references Course(Cname)
)
我建表Student[出现下面的错误提示
color=#FF0000]SQL提示如下:
消息 1776,级别 16,状态 0,第 1 行
在被引用表 'Department' 中没有与外键 'FK__Student__Sdepart__49C3F6B7' 中的引用列列表匹配的主键或候选键。
消息 1750,级别 16,状态 0,第 1 行
无法创建约束。请参阅前面的错误消息
create table Department
( Dname varchar(7) not null ,
Dnumber char(2) primary key not null ,
Dleader varchar(3) not null,
Dleaderc varchar(11) unique
)
create table Student
( Sname varchar(3) not null ,
Snumber varchar(7) primary key not null,
Ssex char(1) check(Ssex='b' or Ssex='g'),
Sdob datetime check(Sdob>='1900' and Sdob<='2100'),
Sadress char(4) not null,
Smobile varchar(11) not null ,
Sdepartment varchar(7) not null,
foreign key (Sdepartment) references Department(Dname)--把Dname改成Dnumber 就应该可以了。
)
create table Course
( Cname varchar(5) not null ,
Cnumber varchar(2) primary key not null ,
Cst int ,
Cgrade smallint not null ,
Cteacher varchar(3) not null
)
create table Studentc
( Sname varchar(3) not null ,
Snumber varchar(7) primary key not null ,
Cname varchar(5) not null unique,
Cgrade int check(Cgrade>=’100’ and Cgrade<=’00’) ,
foreign key (Sname) references Student(Sname) ,
foreign key (Cname) references Course(Cname)
)
( Dname varchar(7) not null UNIQUE,
Dnumber char(2) primary key not null ,
Dleader varchar(3) not null,
Dleaderc varchar(11) unique
)
create table Student
( Sname varchar(3) not null unique,
Snumber varchar(7) primary key not null,
Ssex char(1) check(Ssex='b' or Ssex='g'),
Sdob datetime check(Sdob>='1900' and Sdob<='2100'),
Sadress char(4) not null,
Smobile varchar(11) not null ,
Sdepartment varchar(7) not null foreign key references Department(Dname)
)
create table Course
( Cname varchar(5) not null unique,
Cnumber varchar(2) primary key not null ,
Cst int ,
Cgrade smallint not null ,
Cteacher varchar(3) not null
)
create table Studentc
( Sname varchar(3) not null unique,
Snumber varchar(7) primary key not null ,
Cname varchar(5) not null unique,
Cgrade int check(Cgrade>='100' and Cgrade<='00')
foreign key (Sname) references Student(Sname) ,
foreign key (Cname) references Course(Cname)
)