news 2026/4/30 21:12:33

在MySQL中创建数据库和表

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
在MySQL中创建数据库和表

1.登录MySQL数据库

mysql -u root -p

然后输入你的密码:********

如果出现mysql: command not found错误,说明MySQL命令行工具没有在PATH中,需要:

  • 使用绝对路径:/usr/local/mysql/bin/mysql -u root -p

  • 或者将MySQL添加到PATH环境变量

2.创建数据库

登录成功后,输入以下SQL语句:

-- 创建数据库时指定字符集 CREATE DATABASE my_demo_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; -- 使用这个数据库 USE my_demo_db;

3.创建两张有外键关系的表

先创建父表(主表)

-- 创建用户表(指定字符集) CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(50) NOT NULL UNIQUE, email VARCHAR(100) NOT NULL UNIQUE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

再创建子表(从表)

-- 创建订单表(指定字符集) CREATE TABLE orders ( order_id INT PRIMARY KEY AUTO_INCREMENT, user_id INT NOT NULL, product_name VARCHAR(100) NOT NULL, amount DECIMAL(10, 2) NOT NULL, order_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

4.查看创建的表结构

-- 查看所有表 SHOW TABLES; -- 查看表结构 DESCRIBE users; DESCRIBE orders; -- 或使用更详细的查看方式 SHOW CREATE TABLE users; SHOW CREATE TABLE orders;

5.插入测试数据

-- 向users表插入数据 INSERT INTO users (username, email) VALUES ('张三', 'zhangsan@example.com'), ('李四', 'lisi@example.com'); -- 向orders表插入数据(注意:user_id必须存在于users表中) INSERT INTO orders (user_id, product_name, amount) VALUES (1, '笔记本电脑', 5999.99), (1, '鼠标', 89.50), (2, '手机', 2999.00), (2, '耳机', 399.00);

6.验证外键关系

-- 查询关联数据 SELECT u.username, u.email, o.product_name, o.amount, o.order_date FROM users u JOIN orders o ON u.id = o.user_id; -- 测试外键约束(这应该会失败,因为user_id=999不存在) INSERT INTO orders (user_id, product_name, amount) VALUES (999, '测试产品', 100.00); -- 测试级联删除(删除用户时,其所有订单也会被删除) DELETE FROM users WHERE id = 1; -- 查看删除后的数据 SELECT * FROM users; SELECT * FROM orders;
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 4:44:15

Ollama别名简化模型调用提升开发效率

Ollama别名简化模型调用提升开发效率 在本地大语言模型(LLM)迅速普及的今天,越来越多开发者开始将 AI 能力嵌入个人工作流或企业系统。无论是搭建一个私有知识库,还是为团队构建智能问答助手,Ollama Anything-LLM 已成…

作者头像 李华
网站建设 2026/5/1 4:44:54

Windows on Arm运行PyTorch-DirectML实录

Windows on Arm 运行 PyTorch-DirectML 实录 在一台搭载高通骁龙 8cx Gen 3 的联想 ThinkPad X13s 上,我尝试运行一个最简单的 PyTorch 推理任务——不是通过 WSL2、不是模拟 CUDA,而是真正让模型在 Adreno GPU 上跑起来。这台设备没有 NVIDIA 显卡&…

作者头像 李华
网站建设 2026/5/1 0:21:31

FLUX.1-Controlnet-Union训练资源全解析

FLUX.1-Controlnet-Union训练资源全解析:从镜像部署到多模态训练的系统规划 在尝试将 ControlNet-Union 与 FLUX.1-dev 联合训练时,你是否经历过凌晨三点被 OOM(显存溢出)中断惊醒?是否曾眼睁睁看着价值数万美元的 A10…

作者头像 李华
网站建设 2026/5/1 7:19:11

开源RAG文档问答工具Kotaemon深度解析

开源RAG文档问答工具Kotaemon深度解析 在大模型应用如火如荼的今天,构建一个真正可靠、可落地的智能问答系统远比“输入问题、输出答案”复杂得多。许多团队尝试基于LangChain快速搭建RAG(检索增强生成)系统,但往往在上线后遭遇准…

作者头像 李华
网站建设 2026/5/1 4:58:42

FaceFusion本地部署指南:Windows环境配置

FaceFusion本地部署指南:Windows环境配置 在AI视觉创作领域,人脸替换技术正从“炫技”走向实用。无论是短视频创作者想实现跨年龄演绎,还是影视后期需要修复老片画质,一个稳定、高效且可本地运行的人脸处理工具都显得尤为关键。F…

作者头像 李华
网站建设 2026/5/1 8:06:01

HttpURLConnection 与其他客户端关系

HttpURLConnection 与其他HTTP客户端的关系1. HttpURLConnection 是什么?基本概念:java// JDK原生HTTP客户端 URL url new URL("https://api.example.com/data"); HttpURLConnection connection (HttpURLConnection) url.openConnection(); …

作者头像 李华