《红楼梦》学生表 MySQL 操作语句

以下是完整的 MySQL SQL 语句示例。我们假设使用《红楼梦》中的主要人物作为“学生”数据。语句顺序执行,便于在 MySQL 客户端(如 MySQL Workbench)中直接运行。

1. 创建数据库和表

-- 创建数据库(如果不存在)
CREATE DATABASE IF NOT EXISTS honglou_db;
USE honglou_db;

-- 创建学生表:id(主键,自增)、name(姓名)、age(年龄)、classroom(班级)
CREATE TABLE IF NOT EXISTS students (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(50) NOT NULL,
    age INT,
    classroom VARCHAR(50)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

2. 添加初始数据

-- 插入《红楼梦》人物作为学生数据
INSERT INTO students (name, age, classroom) VALUES
('贾宝玉', 16, '怡红院班'),
('林黛玉', 15, '潇湘馆班'),
('薛宝钗', 16, '蘅芜苑班'),
('王熙凤', 20, '荣禧堂班'),
('史湘云', 15, '稻香村班'),
('贾探春', 14, '秋爽斋班');

3. 增删改查(CRUD)操作示例

查(Read):查询所有学生,或按条件查询
-- 查询所有学生
SELECT * FROM students;

-- 条件查询:年龄小于16岁的“潇湘馆班”学生
SELECT * FROM students WHERE age < 16 AND classroom = '潇湘馆班';

示例输出(所有学生,假设已插入数据):

id name age classroom
1 贾宝玉 16 怡红院班
2 林黛玉 15 潇湘馆班
3 薛宝钗 16 蘅芜苑班
4 王熙凤 20 荣禧堂班
5 史湘云 15 稻香村班
6 贾探春 14 秋爽斋班
增(Create):添加新学生(例如贾元春)
-- 插入新记录
INSERT INTO students (name, age, classroom) VALUES ('贾元春', 22, '省亲别墅班');

-- 验证:查询最新一条记录
SELECT * FROM students ORDER BY id DESC LIMIT 1;
改(Update):修改数据(例如给林黛玉改年龄)
-- 更新记录
UPDATE students SET age = 16 WHERE name = '林黛玉';

-- 验证
SELECT * FROM students WHERE name = '林黛玉';
删(Delete):删除学生(例如删除史湘云)
-- 删除记录
DELETE FROM students WHERE name = '史湘云';

-- 验证剩余数据
SELECT * FROM students;

运行提示

  • 先执行创建数据库和表的语句。
  • 所有语句支持事务:用 START TRANSACTION; 开始,COMMIT; 提交,ROLLBACK; 回滚。
  • 如果需要查看表结构:DESCRIBE students;SHOW CREATE TABLE students;
  • 这些语句兼容 MySQL 5.7+ 版本。

写文章用