SpringBoot新手快速入门系列教程三:Mysql基础生存命令指南

以下是一些基本的MySQL命令,帮助你创建数据库、创建表、定义各种类型的列、设置主键和外键、插入数据以及查询数据。

1. 创建数据库

复制代码
CREATE DATABASE mydatabase;

2. 使用数据库

复制代码
USE mydatabase;

3. 创建表

以下是一个示例,创建一个名为 users 的表,包含各种类型的列,并设置主键和外键。

复制代码
CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,       -- 主键
    username VARCHAR(50) NOT NULL,           -- 字符串列
    password VARCHAR(255) NOT NULL,          -- 字符串列
    email VARCHAR(100),                      -- 字符串列
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,  -- 时间戳
    updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,  -- 时间戳
    profile_id INT,                          -- 外键引用列
    CONSTRAINT fk_profile FOREIGN KEY (profile_id) REFERENCES profiles(id)  -- 外键约束
);

4. 清空表

清空表(删除所有数据但保留表结构)

复制代码
TRUNCATE TABLE tablename;

5. 创建各种类型的列

CREATE TABLE 语句中,你可以定义不同类型的列:

  • INT:整数
  • VARCHAR(n):可变长度字符串
  • TEXT:文本
  • DATE:日期
  • TIMESTAMP:时间戳
  • DECIMAL(m, d):定点数

示例:

复制代码
CREATE TABLE products (
    product_id INT AUTO_INCREMENT PRIMARY KEY,
    product_name VARCHAR(100) NOT NULL,
    description TEXT,
    price DECIMAL(10, 2),
    created_date DATE,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

6. 插入数据

复制代码
INSERT INTO users (username, password, email, profile_id) VALUES ('john_doe', 'securepassword', 'john@example.com', 1);

7. 查询所有数据

复制代码
SELECT * FROM users;

8. 根据某个键查询数据

根据主键查询:

复制代码
SELECT * FROM users WHERE id = 1;

根据其他键查询:

复制代码
SELECT * FROM users WHERE username = 'john_doe';

9. 创建和使用外键

假设你有一个 profiles 表,创建 profiles 表:

复制代码
CREATE TABLE profiles (
    id INT AUTO_INCREMENT PRIMARY KEY,
    bio TEXT,
    website VARCHAR(100)
);

users 表中添加 profile_id 外键:

复制代码
ALTER TABLE users
ADD CONSTRAINT fk_profile
FOREIGN KEY (profile_id)
REFERENCES profiles(id);

10. 删除数据

删除特定行:

复制代码
DELETE FROM users WHERE id = 1;

11. 更新数据

复制代码
UPDATE users SET email = 'john_new@example.com' WHERE id = 1;

12.删除表

复制代码
DROP TABLE tablename;

13,删除数据库

复制代码
DROP DATABASE mydatabase;
相关推荐
想用offer打牌8 小时前
MCP (Model Context Protocol) 技术理解 - 第二篇
后端·aigc·mcp
KYGALYX9 小时前
服务异步通信
开发语言·后端·微服务·ruby
掘了9 小时前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
ccecw10 小时前
Mysql ONLY_FULL_GROUP_BY模式详解、group by非查询字段报错
数据库·mysql
JH307310 小时前
达梦数据库与MySQL的核心差异解析:从特性到实践
数据库·mysql
爬山算法10 小时前
Hibernate(90)如何在故障注入测试中使用Hibernate?
java·后端·hibernate
猫头虎10 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
Moment10 小时前
富文本编辑器在 AI 时代为什么这么受欢迎
前端·javascript·后端
Cobyte11 小时前
AI全栈实战:使用 Python+LangChain+Vue3 构建一个 LLM 聊天应用
前端·后端·aigc