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

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
简介: 实验2 数据库及数据库表的建立

实验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)
)


  • 2.建立一个“学生表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),
)


  • 3.建立一个学生表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),
)


  • 4.建立“课程表C”,包括课程号cno,课程名称cname,先修课程cpno,学分credit,要求建立主键


create table C
(
  cno char(4) primary key,
  cname varchar(30),
  cpno varchar(30),
  credit int
)

  • 5.建立“成绩表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)

  • 2.删除sc表中rkjs一列。


alter table SC drop column rkjs 


  • 3.将s1表的sname一列允许空值的属性更改成不允许为空,将列sname的长度由char(8)改为char(10)。


alter table S1 
alter column sname char(10) not null 


  • 4.增加SC表的列grade增加一个约束要求cj>0 and cj<=100。


alter table SC add check(grage>0 and grage <=100)


  • 5.建立一个临时表:#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的企业管理器的用法,学会了基本表的建立、删除、和修改,还对索引和视图有了一定的了解,加深了对数据库的理解。


相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS&nbsp;SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/sqlserver
相关文章
|
7月前
|
关系型数据库 MySQL Java
西电数据库实验一:数据库远程连接的实验报告
姓名:贾瑞 学号:21009201172 实验一:数据库远程连接
|
7月前
|
SQL 安全 数据库
SQLServer 实现数据库表复制到另一个数据库_kaic
SQLServer 实现数据库表复制到另一个数据库_kaic
|
2月前
|
关系型数据库 MySQL Java
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
这篇文章是关于如何使用Django框架配置MySQL数据库,创建模型实例,并自动或手动创建数据库表,以及对这些表进行操作的详细教程。
87 0
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
|
7月前
|
存储 Oracle 关系型数据库
实验三 Oracle数据库的创建和管理
实验三 Oracle数据库的创建和管理
82 1
|
7月前
|
SQL Oracle 关系型数据库
实验一 安装和使用Oracle数据库
实验一 安装和使用Oracle数据库
88 1
|
7月前
|
关系型数据库 分布式数据库 数据库
云原生数据库PolarDB快速入门实验
【2月更文挑战第2天】很基础的PolarDB入门操作实验考试,假期闲着无聊考着玩玩。云原生数据库 PolarDB MySQL 版是阿里云自研产品,100%兼容 MySQL。PolarDB产品具有多主多写、多活容灾、HTAP 等特性,交易性能最高可达开源数据库的6倍,分析性能最高可达开源数据库的400倍,TCO 低于自建数据库50%。
|
7月前
|
SQL 数据处理 定位技术
数据库基础(二):数据库表创建、修改、复制、删除与表数据处理
数据库基础(二):数据库表创建、修改、复制、删除与表数据处理
200 2
|
7月前
|
存储 SQL 弹性计算
西电数据库实验三:XDSQL数据库优化
姓名:贾瑞 学号:21009201172
|
7月前
|
SQL 关系型数据库 分布式数据库
西电数据库实验二:XDSQL与PolarDB对比实验
实验二 XDSQL与PolarDB对比实验 姓名:贾瑞  学号:21009201172
|
数据库
实验四--数据库的安全性、完整性控制
实验四--数据库的安全性、完整性控制
88 0