数据库系统概论实验一 SQL数据定义

Posted 明金同学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库系统概论实验一 SQL数据定义相关的知识,希望对你有一定的参考价值。

文章目录

一、实验目的

1.掌握SQL Server数据库系统基本操作
2.掌握SQL Server数据库系统数据定义使用方法

二、实验内容

1.在架构T下创建Student、Course、SC三张数据表(参见教材),并建立相应索引。
2. 在以上三张表中录入若干数据。
3.查询计科系20-23岁男同学的学号,姓名和出生年月。
4. 查询姓刘,且名字为二个汉字的学生。
5. 备份数据库

三、问题和要求

1.写出你操作并正确执行的代码及结果。

– 在架构T下创建Student、Course、SC三张数据表(参见教材),并建立相应索引。
DROP TABLE IF EXISTS SC;
DROP TABLE IF EXISTS Student;
DROP TABLE IF EXISTS Course;
 
CREATE TABLE Student
 (	
 Sno CHAR(9) PRIMARY KEY,        /* 列级完整性约束条件,Sno是主码*/                  
 Sname CHAR(20) UNIQUE,          /* Sname取唯一值*/
 Ssex CHAR(2),
 Sage SMALLINT,
 Sdept CHAR(20)
 ); 
 
CREATE TABLE  Course
 (	
 Cno CHAR(4) PRIMARY KEY,
 Cname CHAR(40),            
 Cpno CHAR(4),               	                      
 Ccredit SMALLINT,
 FOREIGN KEY (Cpno) REFERENCES  Course(Cno) /* 表级完整性约束条件, Cpno是外码,被参照表是自身*/
 ); 
 
CREATE TABLE  SC
 (
 Sno CHAR(9), 
 Cno CHAR(4),  
 Grade SMALLINT,
 PRIMARY KEY (Sno,Cno),                      /* 主码由两个属性构成,必须作为表级完整性进行定义*/
 FOREIGN KEY (Sno) REFERENCES Student(Sno),  /* 表级完整性约束条件,Sno是外码,被参照表是Student*/
 FOREIGN KEY (Cno)REFERENCES Course(Cno)     /* 表级完整性约束条件,Cno是外码,被参照表是Course*/
 ); 
– 在以上三张表中录入若干数据。
INSERT  INTO  Student (Sno,Sname,Ssex,Sdept,Sage) VALUES ('201215121','李勇','男','CS',20);
INSERT  INTO  Student (Sno,Sname,Ssex,Sdept,Sage) VALUES ('201215122','刘晨','女','CS',19);
INSERT  INTO  Student (Sno,Sname,Ssex,Sdept,Sage) VALUES ('201215123','王敏','女','MA',18);
INSERT  INTO  Student (Sno,Sname,Ssex,Sdept,Sage) VALUES ('201215125','张立','男','IS',19);
INSERT  INTO  Student (Sno,Sname,Ssex,Sdept,Sage) VALUES ('201215128','陈冬','男','IS',20);
  
INSERT  INTO Course(Cno,Cname,Cpno,Ccredit)	VALUES ('1','数据库',NULL,4);
INSERT  INTO Course(Cno,Cname,Cpno,Ccredit)	VALUES ('2','数学',NULL,4);
INSERT  INTO Course(Cno,Cname,Cpno,Ccredit)	VALUES ('3','信息系统',NULL,4);
INSERT  INTO Course(Cno,Cname,Cpno,Ccredit)	VALUES ('4','操作系统',NULL,4);
INSERT  INTO Course(Cno,Cname,Cpno,Ccredit)	VALUES ('5','数据结构',NULL,4);
INSERT  INTO Course(Cno,Cname,Cpno,Ccredit)	VALUES ('6','数据处理',NULL,4);
INSERT  INTO Course(Cno,Cname,Cpno,Ccredit)	VALUES ('7','Pascal语言',NULL,4);
 
INSERT  INTO SC(Sno,Cno,Grade) VALUES ('201215121 ','1',92);
INSERT  INTO SC(Sno,Cno,Grade) VALUES ('201215121 ','2',85);
INSERT  INTO SC(Sno,Cno,Grade) VALUES ('201215121 ','3',88);
INSERT  INTO SC(Sno,Cno,Grade) VALUES ('201215122 ','2',90);
INSERT  INTO SC(Sno,Cno,Grade) VALUES ('201215122 ','3',80);


SELECT * FROM Student;
SELECT * FROM Course;
SELECT * FROM SC;



– 查询计科系20-23岁男同学的学号,姓名和出生年月。
SELECT * FROM Student WHERE Sage IN(20,23);
– 查询姓刘,且名字为二个汉字的学生。
SELECT * FROM Student WHERE Sname LIKE '刘_';

以上是关于数据库系统概论实验一 SQL数据定义的主要内容,如果未能解决你的问题,请参考以下文章

数据库系统概论实验一 SQL数据定义

数据库系统概论实验三 SQL数据定义及更新

数据库系统概论实验三 SQL数据定义及更新

数据库系统概论实验三 SQL数据定义及更新

数据库系统概论实验二 SQL数据查询

数据库系统概论实验二 SQL数据查询