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;
相关推荐
哈里谢顿1 小时前
`127.0.0.1` 和 `0.0.0.0` 有何区别?通过验证 demo来展示
后端
树獭叔叔1 小时前
08-大模型后训练的指令微调SFT:LoRA让大模型微调成本降低99%
后端·aigc·openai
苏三说技术1 小时前
我终于遇到一台真正懂程序员的显示器!
后端
于眠牧北1 小时前
MySQL的锁类型,表锁,行锁,MVCC中所使用的临键锁
mysql
Re_zero1 小时前
线上日志被清空?这段仅10行的 IO 代码里竟然藏着3个毒瘤
java·后端
花落人散处1 小时前
流式输出——解决 HITL 难题 (SpringAIAlibaba)
后端
洋洋技术笔记1 小时前
Spring Boot条件注解详解
java·spring boot
BingoGo3 小时前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php
JaguarJack3 小时前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php·服务端
Victor3563 小时前
MongoDB(18)如何向MongoDB集合中插入文档?
后端