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

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

相关推荐
TDengine (老段)1 天前
TDengine Python 连接器入门指南
大数据·数据库·python·物联网·时序数据库·tdengine·涛思数据
萧曵 丶1 天前
事务ACID特性详解
数据库·事务·acid
kejiayuan1 天前
CTE更易懂的SQL风格
数据库·sql
kaico20181 天前
MySQL的索引
数据库·mysql
清水白石0081 天前
解构异步编程的两种哲学:从 asyncio 到 Trio,理解 Nursery 的魔力
运维·服务器·数据库·python
资生算法程序员_畅想家_剑魔1 天前
Mysql常见报错解决分享-01-Invalid escape character in string.
数据库·mysql
PyHaVolask1 天前
SQL注入漏洞原理
数据库·sql
ptc学习者1 天前
黑格尔时代后崩解的辩证法
数据库
代码游侠1 天前
应用——智能配电箱监控系统
linux·服务器·数据库·笔记·算法·sqlite
!chen1 天前
EF Core自定义映射PostgreSQL原生函数
数据库·postgresql