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;
相关推荐
努力努力再努力wz4 分钟前
【MySQL 进阶系列】拒绝滥用root:从 mysql.user 到权限校验,带你彻底理解用户管理与授权机制!
android·c语言·开发语言·数据结构·数据库·c++·mysql
手握风云-16 分钟前
Spring AI:让大模型住进 Spring 生态(四)
java·后端·spring
Java面试题总结23 分钟前
Spring Boot:别再重复造轮子,这些内置功能香麻了
java·spring boot·后端
海兰1 小时前
【第32篇】场景示例项目
人工智能·spring boot·状态模式·spring ai
Hical_W1 小时前
用 Hical + MySQL 5 分钟搭建 CRUD API(C++20 协程版)
数据库·mysql·c++20
夕除2 小时前
spring boot
java·spring boot·后端
想唱rap2 小时前
传输层协议之UDP
java·linux·网络·c++·网络协议·mysql·udp
smallyoung2 小时前
RAG质量评估全攻略:RAGAS四维指标 + 生产级监控实战
人工智能·后端
敖正炀2 小时前
boot-boost 项目架构设计文档
spring boot·spring
yangSnowy2 小时前
mac系统安装hyperf框架swoole扩展
后端·macos·swoole