实验2 数据库及数据库表的建立

文章目录

  • 实验2 数据库及数据库表的建立
    • 一、 实验目的
    • 二、实验时数 2学时
    • 三、实验内容
      • 1.首先创建一个学生数据库stu_db
      • 2.基本表的建立:
      • 3、 基本表的修改:
      • 4、索引的建立与删除
    • 四、实验方法
    • 五、收获体会

实验2 数据库及数据库表的建立

一、 实验目的

本实验的目的是使学生熟悉SQL Server 2008的企业管理器的用法,初步了解SQL Server查询分析器的使用方法,熟悉SQL SERVER的常用数据类型、完整性约束,索引的定义与维护。加深对SQL数据定义语言理解,掌握数据库的创建以及基本表的创建与修改。

二、实验时数 2学时

三、实验内容

1.首先创建一个学生数据库stu_db

Create database stu_db;
use stu_db;

2.基本表的建立:

    1. 建立一个学生表S1,它由学号sno、姓名sname、性别ssex、年龄sage、所在系sdept五个属性组成,其中学号属性不能为空,并且其值是唯一的。
    use stu_db
    create table S1
    (
    	sno char(10) unique not null,
    	sname varchar(8),
    	ssex char(2),
    	sage int,
    	sdept varchar(30)
    )
    
    1. 建立一个“学生表S2,它由学号sno、姓名sname、性别ssex、年龄sage、所在系sdept五个属性组成,其中学号属性不能为空,并创建检查约束(sage>0)。
    create table S2
    (
    	sno char(10) not null,
    	sname varchar(8),
    	ssex char(2),
    	sage int check(sage>0),
    	sdept varchar(30),
    	
    )
    
    1. 建立一个学生表S,它由学号sno、姓名sname、性别ssex、年龄sage、所在系sdept五个属性组成,要求学号为主键,ssex有默认的值为 ‘男’。
    create table S 
    (
    	sno char(10) primary key,
    	sname varchar(8),
    	ssex char(2) default '男',
    	sage int,
    	sdept varchar (30),
    	check (sage>0),
    )
    
    1. 建立“课程表C”,包括课程号cno,课程名称cname,先修课程cpno,学分credit,要求建立主键
    create table C
    (
    	cno char(4) primary key,
    	cname varchar(30),
    	cpno varchar(30),
    	credit int
    )
    
    1. 建立“成绩表SC”包括学号sno,课程号cno,成绩grade,要求建立主键及与S及C表联接的外键。
    create table SC
    (
    	sno char(10),
    	cno char(4),
    	grade int,
    	primary key(sno,cno),
    	foreign key(cno) references C(cno),
    	foreign key(sno) references S(sno),
    )
    

3、 基本表的修改:

    1. 在sc表中增加一列“任课教师rkjs”。
    alter table SC add rkjs varchar(10)
    
    1. 删除sc表中rkjs一列。
    alter table SC drop column rkjs 
    
    1. 将s1表的sname一列允许空值的属性更改成不允许为空,将列sname的长度由char(8)改为char(10)。
    alter table S1 
    alter column sname char(10) not null 
    
    1. 增加SC表的列grade增加一个约束要求cj>0 and cj<=100。
    alter table SC add check(grage>0 and grage <=100)
    
    1. 建立一个临时表:#temp(sno char(10),sname char(8));再将其删除。(提示:临时表名称为:#表名,其余和创建普通表一样)。
    create table #temp
    (
    	sno char(10),
    	sname char(8)
    )
    
    

4、索引的建立与删除

  • a) create unique index stu_sno on s1(sno)

  • b) create index sno_cno on SC(sno asc,cno desc)

  • c) drop index SC.sno_cno

四、实验方法

用图形用户界面方式和SQL查询分析器完成以上的任务。并检查所做的操作表现。

五、收获体会

通过这次实验,我熟悉了SQL server的企业管理器的用法,学会了基本表的建立、删除、和修改,还对索引和视图有了一定的了解,加深了对数据库的理解。

你可能感兴趣的:(其它,建立一个学生表S1,在sc表中增加一列,建立一个学生表S,建立一个学生表S2,sql)