mysql初修1

修改密码

今天想要练习一下mysql结果发现有点问题。

需要修改密码,从网上抄了一个命令,版本不匹配。ai给了一个

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

改完密码终于可以查看所有数据库了。


修炼一个小法术试试水

在E盘创建一个test.sql脚本,里面写:SELECT now(); 这个语句是查询当前时间。

来运行一下:


mysql武林招式秘籍:

以我学习的经验,接下来就是操作语句,枯燥无味又多,但又是基础,我就整理一下,用到就来练练哈哈哈哈

第一招:数据库操作

操作 SQL 语句 说明
查看所有数据库 SHOW DATABASES; 显示所有数据库
创建数据库 CREATE DATABASE 数据库名; 创建新数据库
使用数据库 USE 数据库名; 切换到指定数据库
删除数据库 DROP DATABASE 数据库名; 删除数据库(谨慎操作!)

第二招:数据表操作

操作 SQL 语句 说明
查看所有表 SHOW TABLES; 显示当前数据库的所有表
查看表结构 DESCRIBE 表名;或 DESC 表名; 查看表的字段信息
创建表 CREATE TABLE 表名 (列定义); 定义表结构和字段
删除表 DROP TABLE 表名; 删除表(谨慎操作!)

给大家表演一下:

sql 复制代码
CREATE TABLE students (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(50) NOT NULL,
    age INT,
    gender CHAR(1)
);

第三招:增删改查

操作 SQL 语句 说明
插入数据(Create) INSERT INTO 表名 (列1, 列2, ...) VALUES (值1, 值2, ...); 插入一条或多条数据
查询数据(Read) SELECT 列1, 列2, ... FROM 表名 [WHERE 条件]; 查询数据,*表示所有列
更新数据(Update) UPDATE 表名 SET 列1=值1, 列2=值2, ... WHERE 条件; 修改符合条件的数据
删除数据(Delete) DELETE FROM 表名 WHERE 条件; 删除符合条件的数据
sql 复制代码
-- 插入数据
INSERT INTO students (name, age, gender) VALUES ('张三', 20, 'M');

-- 查询所有数据
SELECT * FROM students;

-- 查询特定条件
SELECT name, age FROM students WHERE age > 18;

-- 更新数据
UPDATE students SET age = 21 WHERE name = '张三';

-- 删除数据
DELETE FROM students WHERE name = '李四';

散修:

操作 SQL 语句 说明
查看当前数据库 SELECT DATABASE(); 显示当前正在使用的数据库
查看 MySQL 版本 SELECT VERSION(); 查看 MySQL 服务器版本
查看当前用户 SELECT USER(); 显示当前登录的 MySQL 用户
设置字符集(防乱码) SET NAMES utf8mb4; 避免中文乱码

以上是基础招式,每一个sql人都必会!!!慢慢消化吧。我认为实战是能最快掌握的方法。来吧!打一架吧。


实战:

你需要为学校设计一个 学生信息表,并完成以下任务:

  1. 创建数据库和表(模拟学校数据库环境)。

  2. 插入模拟数据(添加至少 3名学生的信息)。

  3. 查询数据(按不同条件筛选学生)。

  4. 更新数据(修改学生信息)。

  5. 删除数据(移除无效记录)。


1.创建数据库和表

  1. 创建一个名为 **school_db**的数据库。

  2. 在该数据库中创建一张 **students**表,包含以下字段:

    • id(学号,整数,主键,自动递增)

    • name(姓名,字符串,非空)

    • age(年龄,整数)

    • gender(性别,单个字符 'M'或 'F')

    • major(专业,字符串)

    • enrollment_date(入学日期,日期格式 YYYY-MM-DD)

-- 1. 创建数据库

CREATE DATABASE school_db;

-- 2. 使用该数据库

USE school_db;

-- 3. 创建学生表

CREATE TABLE students (

id INT PRIMARY KEY AUTO_INCREMENT,

name VARCHAR(50) NOT NULL,

age INT,

gender CHAR(1),

major VARCHAR(50),

enrollment_data DATE

);

此处的enrollment_data应该是date,懒得改了,就是一个名字的事。

2.插入模拟数据

向 students表中插入 至少 3条学生记录。

3.查询数据

1.查询所有学生信息 (SELECT * FROM students;)

2.查询所有男生的姓名和年龄 (gender = '男')

3.查询年龄大于 20 岁的学生

4.查询 2022 年入学的学生 (enrollment_date LIKE '2022%')

4.更新数据

1.将「李四」的年龄改为 20 岁

2.将所有女生的入学日期更新为 '2023-09-01'。

5.删除数据

1.删除年龄小于 21 岁的学生 (谨慎操作!建议先查询再删除)

烦死了,打错一个字回车就不好改妈的!!!

相关推荐
鱼很腾apoc2 分钟前
【MySQL】 第2期 查询与函数系统详解:从基础 CRUD 到复合多表查询
linux·数据库·学习·mysql·dml
前端 贾公子25 分钟前
LangGraph == 图的状态(State)管理 (下)
运维·服务器·数据库
zlwool35 分钟前
机械行业ERP与进销存的合规选型边界
数据库·erp
梦想的颜色41 分钟前
【AI速览】RAG 向量数据库选型:Milvus、Chroma、Qdrant、PGVector 全维度横向对比
数据库·milvus·chroma·rag·pgvector·向量库·qdrant
小溪学编程1 小时前
向量数据库 Milvus 基础实践:从入门到上手
数据库·milvus
数据最前线1 小时前
雪上加霜,Oracle向蓝色巨人最后的阵地发起挑战
数据库·oracle
于眠牧北1 小时前
Charles配置指定域名抓取和雷电模拟器中抓取APP接口配置
数据库·redis·缓存
stillstream_ink2 小时前
一个缺失的状态校验,让 Mall4j 的订单系统开了 4 个后门
mysql·测试
福娃筱欢2 小时前
57014 canceling statement due to user request(金仓 KingbaseES)
数据库·kingbase·金仓数据库
ClouGence2 小时前
SAP HANA 数据同步遇到长事务,如何兼顾实时性与完整性?
数据库·后端