【MySQL数据库原理】在MySQL Workbench界面运行SQL代码——学生管理系统

时间:2024-11-07 16:09:18

在 MySQL Workbench 8.0 中,你可以使用以下步骤新建内容并运行 MySQL 语言代码:

1、打开 MySQL Workbench 并连接到你的 MySQL 数据库服务器。
在这里插入图片描述

2、在左侧的导航栏中,展开你的连接以查看数据库。选择你要在其中运行 SQL 代码的数据库。
在这里插入图片描述

3、在顶部菜单栏中,点击 “Query”(查询)选项卡,以打开查询编辑器。
在这里插入图片描述

4、在查询编辑器中,粘贴你的 SQL 代码。请确保你的 SQL 语法是正确的。

运行的示例代码如下:

SELECT 'Hello, World!' AS greeting;

这个 SQL 代码粘贴到 MySQL Workbench 的查询编辑器中,并点击 “Execute” 来运行它。结果将在结果窗口中显示,应该会显示 “Hello, World!”。这是一个简单的示例,用于展示如何在 MySQL Workbench 中执行 SQL 查询。

运行按钮是带有雷电符号的图标:
在这里插入图片描述

运行结果:
在这里插入图片描述

下面使用mysql代码实现学生管理系统数据库:

-- 创建一个名为 "students_database" 的数据库
CREATE DATABASE students_database;

-- 使用 "students_database" 数据库(替换成你要使用的数据库名)
USE students_database;

-- 创建学生信息表格
CREATE TABLE students (
    student_id INT AUTO_INCREMENT PRIMARY KEY,   -- 学生ID,自动递增,主键
    first_name VARCHAR(50) NOT NULL,             -- 名字,不为空
    last_name VARCHAR(50) NOT NULL,              -- 姓氏,不为空
    email VARCHAR(100) UNIQUE NOT NULL,          -- 邮箱,唯一且不为空
    birthdate DATE,                             -- 出生日期
    registration_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP  -- 注册日期,默认为当前时间戳
);

-- 创建课程信息表格
CREATE TABLE courses (
    course_id INT AUTO_INCREMENT PRIMARY KEY,     -- 课程ID,自动递增,主键
    course_name VARCHAR(100) NOT NULL,           -- 课程名称,不为空
    instructor VARCHAR(100) NOT NULL             -- 教师姓名,不为空
);

-- 插入学生数据(使用中文名字)
INSERT INTO students (first_name, last_name, email, birthdate)
VALUES
    ('张三', '李四', 'zhangsan@', '1995-05-15'),
    ('王五', '赵六', 'wangwu@', '1996-07-20'),
    ('刘七', '陈八', 'liuqi@', '1997-03-10');

-- 插入课程数据(使用中文课程名和教师名)
INSERT INTO courses (course_name, instructor)
VALUES
    ('数学101', '张老师'),
    ('历史101', '王老师'),
    ('科学101', '李老师');

运行结果:
在这里插入图片描述

运行程序之后记得刷新一下才能看到新建的数据库:
在这里插入图片描述

查看数据库是否创建完成学生管理数据内容:

在这里插入图片描述
在这里插入图片描述

那么,既然上述已经将学生管理数据信息存入数据库,下面又该如何从数据库读取所需结果呢?

要检索学生和课程的数据,你可以使用以下SQL查询,这些查询将从你的数据库中检索学生和老师的信息:

sql

-- 检索所有学生的信息
SELECT * FROM students;

-- 检索所有课程的信息
SELECT * FROM courses;

这两个查询将返回所有学生和课程的信息。如果你只想检索特定条件下的学生或课程,可以添加适当的 WHERE 子句来过滤数据。

例如,以下查询将检索姓氏为 “张” 的所有学生的信息:

SELECT * FROM students
WHERE last_name = '张';

或者,以下查询将检索由 “张老师” 教授的所有课程:

SELECT * FROM courses
WHERE instructor = '张老师';

这些查询可根据你的需求进行调整和扩展。将它们粘贴到MySQL Workbench或其他支持MySQL的数据库工具中,并执行以检索数据。

结合上述的介绍,完整创建新的查询sql文件,文件完整代码如下:

-- 使用 "students_database" 数据库(替换成你要使用的数据库名)
USE students_database;

-- 检索所有学生的信息
SELECT * FROM students;

-- 检索所有课程的信息
SELECT * FROM courses;

-- 检索姓氏为 "张" 的所有学生的信息
SELECT * FROM students
WHERE last_name = '张';

-- 检索由 "张老师" 教授的所有课程的信息
SELECT * FROM courses
WHERE instructor = '张老师';

以上的这些注释解释了每个SQL查询的目的和含义,帮助你理解代码的功能。你可以将这些查询粘贴到MySQL Workbench或其他MySQL数据库工具中,并执行以检索数据。

执行结果:
在这里插入图片描述