MySQL实践教程:数据库操作与表结构管理
需积分: 9 91 浏览量
更新于2024-07-20
收藏 1.11MB DOC 举报
MySQL练习笔记涵盖了MySQL基础操作的实战演练,包括但不限于数据库管理、表的创建与修改、数据插入与查询、以及关联表之间的约束。以下是对每个步骤的详细解读:
1. **查看现有数据库**:首先,了解当前MySQL服务器中已存在的数据库,这有助于理解数据库的基本架构。
2. **删除数据库**:通过SQL命令删除已有的数据库`school`,这展示了删除数据库的基本操作和权限管理。
3. **创建新数据库**:创建一个名为`myschool`的新数据库,演示了数据库的创建过程,包括命名规则和权限设置。
4. **切换到新数据库**:学习如何使用`USE`命令切换到`myschool`数据库,熟悉数据库间的切换。
5. **查看表列表**:在`myschool`中列出所有表,了解表的组织和管理。
6. **创建`student`表**:设计并创建一个名为`student`的表,包括字段定义和数据类型。
7. **查看表结构**:使用`DESCRIBE`或`SHOW CREATE TABLE`命令了解`student`表的详细结构。
8. **数据插入**:通过`INSERT INTO`语句向`student`表中添加两行学生信息,展示基本的数据操作。
9. **查询数据**:查询`student`表中的数据,验证数据是否成功插入。
10. **表结构修改**:添加`age`和`sex`列,并设置默认值,显示如何修改表结构。
11. **插入默认值**:插入学生`zhangsan`的信息,同时演示默认值的应用。
12. **非默认值插入**:插入`zhansan`信息,展示非默认值的插入操作。
13. **列类型和长度修改**:将`sex`列的类型从`char(4)`改为`char(8)`,展示数据类型的调整。
14. **列名更改**:将`sex`列重命名为`gender`,演示列名的修改。
15. **表名更改**:将`student`表改名为`stu`,学习表名的命名规则。
16. **创建新表`score`**:创建一个用于记录成绩的`score`表,涉及表的设计和创建。
17. **设置联合主键**:在`score`表中设定`stuId`和`subject`为主键,体现复合键的概念。
18. **设置外键约束**:将`stuId`作为`score`表的外键,关联到`stu`表的`id`,演示外键的使用。
19. **插入score数据**:插入多条成绩记录,包括关联数据的操作。
20. **外键验证错误**:尝试插入不存在学生的信息,以检验外键约束的完整性。
21. **批量更新成绩**:修改所有学生C++成绩为100,展示数据更新的语句。
22. **特定记录的更新和删除**:修改和删除特定学生的成绩,涉及条件查询和数据维护。
23. **添加更多学生数据**:为了测试,增加学生表数据,强化数据增删改查操作。
24. **修改年龄字段**:更新部分学生年龄,演示数据的修改。
25. **查询特定学生信息**:通过ID查询5号学生信息,学会基于条件的查询。
整个MySQL练习笔记通过一系列实际操作,深入浅出地讲解了MySQL数据库的基础操作、数据表设计、数据管理、以及表间关系的处理,对初学者和进阶者都有实用价值。
2018-05-13 上传
2018-10-15 上传
2020-12-14 上传
2020-12-14 上传
2012-10-22 上传
a_1234567K
- 粉丝: 0
- 资源: 2
最新资源
- 基于Python和Opencv的车牌识别系统实现
- 我的代码小部件库:统计、MySQL操作与树结构功能
- React初学者入门指南:快速构建并部署你的第一个应用
- Oddish:夜潜CSGO皮肤,智能爬虫技术解析
- 利用REST HaProxy实现haproxy.cfg配置的HTTP接口化
- LeetCode用例构造实践:CMake和GoogleTest的应用
- 快速搭建vulhub靶场:简化docker-compose与vulhub-master下载
- 天秤座术语表:glossariolibras项目安装与使用指南
- 从Vercel到Firebase的全栈Amazon克隆项目指南
- ANU PK大楼Studio 1的3D声效和Ambisonic技术体验
- C#实现的鼠标事件功能演示
- 掌握DP-10:LeetCode超级掉蛋与爆破气球
- C与SDL开发的游戏如何编译至WebAssembly平台
- CastorDOC开源应用程序:文档管理功能与Alfresco集成
- LeetCode用例构造与计算机科学基础:数据结构与设计模式
- 通过travis-nightly-builder实现自动化API与Rake任务构建