案例1:数据库与表的基本操作

案例目标

掌握在 MySQL 中创建数据库和表的基本操作。

知识点对应

  • 讲义第1章:数据库基本概念
  • 讲义第2章:SQL概述

案例内容

1.1 创建数据库

-- 创建数据库
CREATE DATABASE IF NOT EXISTS my_circle;

-- 使用数据库
USE my_circle;

1.2 创建用户表(users)

CREATE TABLE users (
    id INT PRIMARY KEY AUTO_INCREMENT,
    username VARCHAR(50) NOT NULL,
    email VARCHAR(100),
    age INT,
    gender ENUM('男', '女'),
    created_at DATETIME DEFAULT CURRENT_TIMESTAMP
);

1.3 创建动态表(posts)

CREATE TABLE posts (
    id INT PRIMARY KEY AUTO_INCREMENT,
    user_id INT,
    content TEXT,
    likes_count INT DEFAULT 0,
    created_at DATETIME DEFAULT CURRENT_TIMESTAMP
);

运行方式

方式一:命令行执行

# 1. 启动 MySQL
mysql -u root -p

# 2. 执行 SQL 脚本
source /path/to/01-数据库与表操作/init.sql

方式二:直接执行 SQL 文件

mysql -u root -p < init.sql

测试验证

执行以下 SQL 验证表结构是否正确:

-- 查看所有表
SHOW TABLES;

-- 查看 users 表结构
DESCRIBE users;

-- 查看 posts 表结构
DESCRIBE posts;

-- 查看建表语句
SHOW CREATE TABLE users;

预期输出

测试 SQL 预期结果
SHOW TABLES 显示 users, posts 两张表
DESCRIBE users 显示 6 列:id, username, email, age, gender, created_at
DESCRIBE posts 显示 5 列:id, user_id, content, likes_count, created_at

结果解读

SQL 语句 输出含义 讲义对应
CREATE DATABASE 创建数据库 1.1 数据库概念
CREATE TABLE 创建数据表 2.1 DDL 数据定义
INT PRIMARY KEY 主键自增 3.1 数据类型
VARCHAR(50) 可变长度字符串 3.1 数据类型
DEFAULT CURRENT_TIMESTAMP 默认时间戳 3.1 默认值

下一步

案例2将介绍数据的增删改查操作。