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

【数据库原理及应用】【数据库系统概论第5版王珊】期末考试复习必备

知识点

文档中包含的知识点主要涉及数据库的创建、表的创建与修改、索引的创建与管理、视图的创建与管理以及数据的查询与更新。以下是对文档中知识点的详细总结:

数据库操作

  • 创建数据库 (CREATE DATABASE)
  • 使用数据库 (USE)

表的创建与修改

  • 创建数据表 (CREATE TABLE)
  • 修改表结构,如添加字段、删除字段、修改字段类型等 (ALTER TABLE)
    • 添加字段 (ADD)
    • 删除字段 (DROP)
    • 修改字段属性 (MODIFYCHANGE)
    • 重命名字段 (CHANGE)
  • 删除表 (DROP TABLE)

索引的创建与管理

  • 创建索引以提高查询效率 (CREATE INDEX)
    • 单列索引
    • 多列索引
    • 唯一性索引
    • 全文索引
  • 查看索引结构
  • 删除索引 (DROP INDEX)

视图的创建与管理

  • 创建视图以简化复杂查询 (CREATE VIEW)
  • 查看视图结构
    • 查看基本结构 (DESC)
    • 查看详细结构 (SHOW CREATE VIEW)
  • 修改视图定义 (ALTER VIEW)
  • 更新视图数据
  • 删除视图 (DROP VIEW)

数据查询

  • 基本的查询操作 (SELECT)

数据更新

  • 更新数据表中的记录 (UPDATE)

数据删除

  • 删除数据表中的记录 (DELETE FROM)

数据完整性约束

  • 定义主键 (PRIMARY KEY)
  • 定义唯一性约束 (UNIQUE)
  • 定义外键约束 (FOREIGN KEY) 及其删除

数据类型与属性

  • 整数类型 (INT)
  • 浮点类型 (FLOAT)
  • 字符串类型 (VARCHAR)
  • 日期时间类型 (DATETIME)
  • 二进制大对象 (BLOB)
  • 存储引擎更改 (ENGINE)

其他SQL操作

  • 自动增长的字段属性 (AUTO_INCREMENT)
  • 数据插入操作 (INSERT INTO)
  • 数据删除操作的注意事项(如外键约束导致的删除失败)

这些知识点涵盖了数据库管理系统(DBMS)中的基本操作,适用于学习和实践关系型数据库的使用。

实验参考代码

实验1 建立数据库及其对象

一、验证性实验
1. 表定义与修改操作
    (1)首先创建数据库schoolInfo。

CREATE DATABASE schoolInfo;

  (2)创建 teacherInfo 表。

USE schoolInfo;
CREATE TABLE  teacherInfo (
id INT(4) NOT NULL UNIQUE PRIMARY KEY AUTO_INCREMENT,
num INT(10)NOT NULL UNIQUE,
Name VARCHAR(20)NOT NULL,
Sex VARCHAR(4)NOT NULL,
Birthday DATETIME,
Address VARCHAR(50)
);

  (3)将 teacherInfo 表的name字段的数据类型改为 VARCHAR(30)。

ALTER TABLE teacherInfo MODIFY name VARCHAR(30) NOT NULL;
  • 会出现警告,编号为1681。警告内容是:"Integer display width is deprecated and will be removed in a future release." 这表示在创建表时使用的INT(4)INT(10)中的数字(4和10)是被弃用的,并且在未来版本的MySQL中将被移除。这是因为在MySQL 8.0.16及以后的版本中,指定整数类型的长度不再影响其显示宽度,而只是用于指定精度。

(4)将birthday字段的位置改到sex字段的前面。

ALTER TABLE teacherInfo MODIFY birthday DATETIME AFTER name;

 注意:AFTER name会导致错误,因为DATETIME类型不能紧跟在VARCHAR类型之后。正确的做法是使用FIRST将字段移动到表定义的开始位置。

ALTER TABLE teacherInfo MODIFY birthday DATETIME FIRST;

(5)将num字段改名为t_id。

ALTER TABLE teacherInfo CHANGE num t_id INT(10) NOT NULL;

(6)将 teacherInfo 表的address字段删除。

ALTER TABLE teacherInfo DROP address;

  (7)在 teacherInfo 表中增加名为wages的字段,数据类型为FLOAT。

ALTER TABLE teacherInfo ADD wages FLOAT;

  (8)将 teacherInfo 表改名为 teacherInfo_Info。

ALTER TABLE teacherInfo RENAME teacherInfo_Info;

  (9)将 teacherInfo_Info表的存储引擎更改为MyISAM类型。

ALTER TABLE teacherInfo_Info ENGINE=MyISAM;

  

实验2 数据查询与更新

实验3 视图创建与管理

实验4 索引创建和管理操作


http://www.kler.cn/a/291809.html

相关文章:

  • Http常⻅见请求/响应头content-type内容类型讲解(笔记)
  • 鸿蒙实现 web 传值
  • 【C++滑动窗口】1248. 统计「优美子数组」|1623
  • 【不写for循环】玩玩行列
  • Docker:查看镜像里的文件
  • 直接映射4条 cacheline,每条cacheline32位数据(混乱版)
  • 实现自定义的移动端双指缩放
  • 重头开始嵌入式第三十三天(数据库)
  • jmeter 梯度测试 如何查看TPS、RT指标
  • [SWPUCTF 2021 新生赛]crypto解题思路
  • Redis主从复制原理,设计的很巧妙
  • IP/TCP/UDP协议的关键知识点
  • 2024年高教社杯全国大学生数学建模竞赛B题思路(2024数学建模国赛B题思路)
  • adb remount Now reboot your device for settings to take effect
  • DS18B20温度传感器详解(STM32)
  • 鸿蒙OS试题(2)
  • 【#第三期实战营闯关作业##LMDeploy 量化部署进阶实践 】
  • MySQL 字符串操作详解和案例示范
  • vue ts as断言处理
  • 自定义 ConsoleAppender 实现日志预处理
  • tcp如何保证可靠性传输
  • 数据资产入表元年,企业如何抓住数据资产增值的机遇?
  • 核心交换机的六个基础知识
  • 智慧体育馆如何区别于传统场馆?
  • 选择高性能服务器租用的优势有哪些?
  • vulhub xxe靶机通关教程