
INSERT 语句与 FOREIGN KEY 约束"FK_Sno"冲突。该冲突发生于数据库"scdb"表"dbo.Student", column 'Sno'
CREATEDATABASEscdbusescdbCREATETABLEStudent(Snochar(9)PRIMARYKEY,Snamechar(20),SsexCH...
CREATE DATABASE scdb
use scdb
CREATE TABLE Student
(
Sno char(9) PRIMARY KEY,
Sname char(20) ,
Ssex CHAR(2) default '男',
Sage SMALLINT CHECK(Sage>0),
Sdept CHAR(20),
);
alter table Student add constraint jian UNIQUE(Sname);
CREATE TABLE Course
(
Cno CHAR(4) PRIMARY KEY,
Cname CHAR(40) NOT NULL,
Cpno CHAR(4),
Ccredit SMALLINT,
FOREIGN KEY(Cpno)REFERENCES Course(Cno)
);
CREATE TABLE SC
(
Sno CHAR(9),
Cno CHAR(4),
Grade SMALLINT,
constraint PK_SC PRIMARY KEY(Sno,Cno),
constraint FK_Sno FOREIGN KEY(Sno)REFERENCES Student(Sno),
constraint FK_Cno FOREIGN KEY(Cno)REFERENCES Course(Cno)
);
exec sp_help Student;
alter table Student drop constraint jian;
alter table Student alter column Sname varchar(20);
alter table Student alter column Sname char(20) not null;
alter table SC add constraint CK_Grade check(Grade>0 and Grade<=100);
Insert into Student values
('200215121','李勇','男','20','CS'),
('200215122','刘晨','女','19','CS'),
('200215123','王敏','女','18','MA'),
('200215124','张立','男','19','IS')
Insert into Course values
('1','数据库','5','4'),
('2','数学',null,'2'),
('3','信息系统','1','4'),
('4','操作系统','6','3'),
('5','数据结构','7','4'),
('6','数据处理',null,'2'),
('7','PASCAL语言','6','4')
Insert into SC values
('201215121','1',92),
('201215121','2',85),
('201215121','3',88),
('201215122','2',90),
('201215122','3',80) 展开
use scdb
CREATE TABLE Student
(
Sno char(9) PRIMARY KEY,
Sname char(20) ,
Ssex CHAR(2) default '男',
Sage SMALLINT CHECK(Sage>0),
Sdept CHAR(20),
);
alter table Student add constraint jian UNIQUE(Sname);
CREATE TABLE Course
(
Cno CHAR(4) PRIMARY KEY,
Cname CHAR(40) NOT NULL,
Cpno CHAR(4),
Ccredit SMALLINT,
FOREIGN KEY(Cpno)REFERENCES Course(Cno)
);
CREATE TABLE SC
(
Sno CHAR(9),
Cno CHAR(4),
Grade SMALLINT,
constraint PK_SC PRIMARY KEY(Sno,Cno),
constraint FK_Sno FOREIGN KEY(Sno)REFERENCES Student(Sno),
constraint FK_Cno FOREIGN KEY(Cno)REFERENCES Course(Cno)
);
exec sp_help Student;
alter table Student drop constraint jian;
alter table Student alter column Sname varchar(20);
alter table Student alter column Sname char(20) not null;
alter table SC add constraint CK_Grade check(Grade>0 and Grade<=100);
Insert into Student values
('200215121','李勇','男','20','CS'),
('200215122','刘晨','女','19','CS'),
('200215123','王敏','女','18','MA'),
('200215124','张立','男','19','IS')
Insert into Course values
('1','数据库','5','4'),
('2','数学',null,'2'),
('3','信息系统','1','4'),
('4','操作系统','6','3'),
('5','数据结构','7','4'),
('6','数据处理',null,'2'),
('7','PASCAL语言','6','4')
Insert into SC values
('201215121','1',92),
('201215121','2',85),
('201215121','3',88),
('201215122','2',90),
('201215122','3',80) 展开
展开全部
你这些数据是哪里来的呢,一般导入的话可以先把数据库检查约束的开关关闭,大概是
--...创建表的语句
ALTER TABLE 表名 NOCHECK CONSTRAINT ALL
--...insert语句
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询