当前位置: 首页 > news >正文

数据库实验报告 数据定义操作 3

实验报告(第3次)

实验名称  数据定义操作                                                    实验时间 10月12日1-2节

一、实验内容

1、本次实验是用sql语句创建库和表,语句是固定的,要求熟记这些sql语句。

二、源程序及主要算法说明

CREATE TABLE Student          (Sno   CHAR(9) PRIMARY KEY, /* 列级完整性约束条件*/                  Sname  CHAR(20) UNIQUE, /* Sname取唯一值*/Ssex    CHAR(2),Sage   SMALLINT,Sdept  CHAR(20)); CREATE TABLE  Course( Cno       CHAR(3) PRIMARY KEY,Cname  CHAR(30),            Cpno     CHAR(3) ,                                      Ccredit  SMALLINT,FOREIGN KEY (Cpno) REFERENCES  Course(Cno) );CREATE TABLE  SC(Sno  CHAR(9), Cno  CHAR(3),  Grade    SMALLINT,PRIMARY KEY (Sno,Cno),  FOREIGN KEY (Sno) REFERENCES Student(Sno),FOREIGN KEY (Cno) REFERENCES Course(Cno));CREATE TABLE 成绩(学号 char(8) not null,课程号 char(8) not null,成绩  int CHECK(成绩>=0  and 成绩<=100))CREATE  TABLE 学生(   学号  char(10),姓名  char(10),性别  char(2)  DEFAULT '男')

三、测试数据及结果

任务

点击“新建查询”——在命令行使用命令建立数据库

创建了数据库后点执行,右击数据库“刷新”,即可看到左边出现了students数据库。

查看students的属性可以看到创建的数据文件和日志文件如下图所示

打开D盘即可看到创建的school数据库的数据文件和日志文件

2.根据下图创建带有两个数据文件和两个日志文件的数据库test.

鼠标右击数据库刷新即可看到test数据库,右击test数据库查看test属性

3.一句话创建默认数据库:create database wj31;

修改数据库名字:alter database  原数据库名 modify name=新数据库名;

删除数据库语句:drop database 数据库名;删除后刷新才可以看到

4:查看全部数据库 sp_helpdb;

5:查看数据库的文件信息: sp_helpdb 数据库名;

6:用SQL语句在数据库创建表;

7:建好表后,再次添加一列: alter table 表名 add 列名 类型null;

8:把room 的类型改为char(6): alter table student alter column room char(6)

9:删除student表的room列

10:删除student表

按照给定的源程序创建三个表

结果

1-1:用SQL语句删除sc表的外键约束

删除前

删除后

1-2:用SQL语句删除student表的主键约束

删除前

删除后

1-3:用SQL语句添加student表的主键约束

添加前

添加后

1-4:给sc表的添加外键约束。

添加前

添加后

2-1:删除成绩的check约束

删除前

删除后

2-2:添加成绩的check约束

添加前

添加后

3-1:删除上例建立的default约束

删除前

删除后

3-2:为性别添加default

添加前

添加后

3-3:为姓名添加unique约束

添加前

添加后

四、出现的问题和解决方案

问题:列级约束中未给约束起别名则默认约束名称连接符为两个“_”

解决方法:直接从图形化界面的中寻找约束或键的名称复制即可

五、心得体会与自我评价

本次实验虽较为简单,但仍需细心并耐心按照实验文档指示完成。

六、教师评语

相关文章:

  • Oracle 高水位线(High Water Mark, HWM)
  • 【数据结构】线性表--队列
  • Echart地图数据源获取
  • [前端高频]数组转树、数组扁平化、深拷贝、JSON.stringifyJSON.parse等手撕
  • 微波至X射线波段详解2025.5.17
  • EXO 可以将 Mac M4 和 Mac Air 连接起来,并通过 Ollama 运行 DeepSeek 模型
  • 从零开始:使用 PyTorch 构建深度学习网络
  • 线性dp练习(碱基配对)
  • 计算机视觉与深度学习 | Python实现EMD-VMD-LSTM时间序列预测(完整源码和数据)
  • 系统架构设计(十):结构化编程
  • 【嵌入式DIY实例-Arduino篇】-OLED实现乒乓游戏
  • Windows 电脑中 MATLAB 安装常见问题及解决方案
  • 深入理解指针(6)
  • 【Linux网络】内网穿透
  • Java 面向对象进阶:抽象类与接口的舞蹈
  • 前端扫盲HTML
  • 目标跟踪相关综述文章
  • 震荡指标工具
  • 桌面端进程通信
  • 记录算法笔记(2025.5.17)验证二叉搜索树
  • 人民日报和音:相信中国就是相信明天
  • 俄外长与美国务卿通电话,讨论俄美接触等问题
  • 网警打谣:传播涉刘国梁不实信息,2人被处罚
  • 当智慧农场遇见绿色工厂:百事如何用科技留住春天的味道?
  • 经济日报评外卖平台被约谈:行业竞争不能背离服务本质
  • 风雨天涯梦——《袁保龄公牍》发微