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

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

相关推荐
小陈工1 小时前
Python Web开发入门(十七):Vue.js与Python后端集成——让前后端真正“握手言和“
开发语言·前端·javascript·数据库·vue.js·人工智能·python
0xDevNull5 小时前
MySQL数据冷热分离详解
后端·mysql
科技小花6 小时前
数据治理平台架构演进观察:AI原生设计如何重构企业数据管理范式
数据库·重构·架构·数据治理·ai-native·ai原生
一江寒逸6 小时前
零基础从入门到精通MySQL(中篇):进阶篇——吃透多表查询、事务核心与高级特性,搞定复杂业务SQL
数据库·sql·mysql
D4c-lovetrain6 小时前
linux个人心得22 (mysql)
数据库·mysql
阿里小阿希6 小时前
CentOS7 PostgreSQL 9.2 升级到 15 完整教程
数据库·postgresql
荒川之神6 小时前
Oracle 数据仓库雪花模型设计(完整实战方案)
数据库·数据仓库·oracle
做个文艺程序员7 小时前
MySQL安全加固十大硬核操作
数据库·mysql·安全
不吃香菜学java7 小时前
Redis简单应用
数据库·spring boot·tomcat·maven
一个天蝎座 白勺 程序猿7 小时前
Apache IoTDB(15):IoTDB查询写回(INTO子句)深度解析——从语法到实战的ETL全链路指南
数据库·apache·etl·iotdb