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 岁的学生 (谨慎操作!建议先查询再删除)

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

相关推荐
全栈老石2 小时前
拆解低代码引擎核心:元数据驱动的"万能表"架构
数据库·低代码
倔强的石头_20 小时前
kingbase备份与恢复实战(二)—— sys_dump库级逻辑备份与恢复(Windows详细步骤)
数据库
jiayou642 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
于眠牧北2 天前
MySQL的锁类型,表锁,行锁,MVCC中所使用的临键锁
mysql
李广坤3 天前
MySQL 大表字段变更实践(改名 + 改类型 + 改长度)
数据库
Turnip12024 天前
深度解析:为什么简单的数据库"写操作"会在 MySQL 中卡住?
后端·mysql
爱可生开源社区4 天前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
随逸1774 天前
《从零搭建NestJS项目》
数据库·typescript
加号35 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
シ風箏5 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker