还有谁不懂数据库基础操作的看过来了简单易学

第3章 数据库和数据表的操作

【学习指南】
本章将深入讲解MySQL数据库的核心操作技术,通过理论与实践相结合的方式,帮助读者掌握数据库的创建维护、数据表管理、字符集设置等核心技能。建议配合MySQL 8.0环境进行实操练习。

3.1 数据库的基本操作

3.1.1 创建数据库
基础语法

CREATE DATABASE test_db;
mysql> CREATE DATABASE test_db;
Query OK, 1 row affected (0.00 sec)

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| test_db            |  -- 新创建的数据库
+--------------------+
5 rows in set (0.00 sec)

 

示例:创建教学管理系统数据库

CREATE DATABASE IF NOT EXISTS edu_system 
DEFAULT CHARACTER SET utf8mb4 
COLLATE utf8mb4_0900_ai_ci;


 

3.1.2 查看数据库
 

SHOW DATABASES;  -- 查看所有数据库
SHOW CREATE DATABASE edu_system;  -- 查看建库语句

3.1.3 选择数据库
 

USE edu_system;  -- 切换当前数据库
SELECT DATABASE();  -- 查看当前数据库


 3.1.4 删除数据库
 

DROP DATABASE [IF EXISTS] db_name;
-- 注意:删除操作不可逆!需谨慎操作


3.2 数据表的基本操作

3.2.1 创建数据表

CREATE TABLE students (
    stu_id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(20) NOT NULL,
    gender ENUM('男','女') DEFAULT '男',
    birthdate DATE,
    email VARCHAR(50) UNIQUE,
    INDEX idx_name (name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;


 

 3.2.2 修改表结构

ALTER TABLE students
ADD COLUMN phone CHAR(11) AFTER birthdate,
MODIFY COLUMN email VARCHAR(100),
DROP INDEX idx_name;

3.2.3 查看表信息
 

DESC students;  -- 查看表结构
SHOW CREATE TABLE students;  -- 查看建表语句

 3.2.4 删除数据表

DROP TABLE [IF EXISTS] students;


3.2.5 数据操作(DML)
 

INSERT INTO students(name, gender, birthdate) 
VALUES ('张三', '男', '2003-05-20');

UPDATE students SET email='zhangsan@edu.cn' 
WHERE stu_id = 1;

DELETE FROM students WHERE stu_id = 1;

3.3 项目数据库的实现学生管理系统数据库示例
 

-- 创建课程表
CREATE TABLE courses (
    course_id INT AUTO_INCREMENT PRIMARY KEY,
    course_name VARCHAR(40) NOT NULL,
    credit TINYINT UNSIGNED,
    teacher VARCHAR(20)
);

-- 创建选课关联表
CREATE TABLE course_selection (
    selection_id INT AUTO_INCREMENT PRIMARY KEY,
    stu_id INT,
    course_id INT,
    score DECIMAL(5,2),
    FOREIGN KEY (stu_id) REFERENCES students(stu_id),
    FOREIGN KEY (course_id) REFERENCES courses(course_id)
);

3.4 字符集与校对集

3.4.1 字符集基础

UTF8与UTF8MB4区别:utf8mb4支持emoji表情(需要4字节存储)
 查看支持字符集:`SHOW CHARACTER SET;`

3.4.2 校对集设置
 

CREATE TABLE example (
    content VARCHAR(20)
) CHARSET=utf8mb4 COLLATE=utf8mb4_0900_as_cs;  -- 区分大小写的校对规则

3.4.3 修改字符集
 

ALTER DATABASE edu_system 
CHARACTER SET = utf8mb4 
COLLATE = utf8mb4_0900_ai_ci;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值