MySQL数据库的相关语句

数据库的操作( CURD ) 创建数据库(重点)

查看数据库(重点)

  1. show databases; ‐‐ 查看所有的数据库
  2. use 数据库名称;(*****) ‐‐ 使用数据库
  3. show create database 数据库名称; ‐‐ 查询数据库的创建的信息
  4. select database(); ‐‐ 查询当前正在使用的数据库

删除数据库

.drop database 数据库名称;

查看当前数据库服务器中的所有数据库

  • show databases;

查看前面创建的mydb2数据库的定义信息

  • show create database mydb2;

删除前面创建的mydb1数据库

  • drop database mydb1;

修改数据库

1.语法:alter database 数据库名称 character set 'gbk' collate '校对规则';
表结构操作( CURD ) 创建表

  1. 语法:

create table 表名称(

字段1 类型(长度) 约束,

字段2 类型(长度) 约束,

字段3 类型(长度) 约束

);

  1. 注意:

    • 创建表的时候,后面用小括号,后面分号。
    • 编写字段,字段与字段之间使用逗号,最后一个子段不能使用逗号。
    • 如果声明字符串数据的类型,长度是必须指定的。
    • 如果不指定数据的长度,有默认值的。int类型的默认长度是11
  2. 创建一张表结构(员工表练习) create table employee(

id int,

name varchar(30), gender char(5), birthday date, entry_date date, job varchar(50), salary double, resume text

);

  1. 执行SQL语句

    • 查询当前正在使用的数据库 select database();
    • 选择你要使用的数据库 use mydb2;
    • 执行创建表的SQL语句。
  2. 使用desc employee;查询表的信息

删除和查看表

修改表

  1. 语法
    • alter table 表名 add 新列名 类型(长度) 约束; ‐‐ 添加列

    • alter table 表名 drop 列名; ‐‐ 删除列

    • alter table 表名 modify 列名 类型(长度) 约束; ‐‐ 修改列的类型或者约束

    • alter table 表名 change 旧列名 新列名 类型(长度) 约束; ‐‐ 修改列名

    • rename table 表名 to 新表名; ‐‐ 修改表的名称

    • alter table 表 名 character set utf8; ‐‐ 修改表的字符集

      在上面员工表的基本上增加一个image列。

      alter table employee add image varchar(50);

      修改job列,使其长度为60。

      alter table employee modify job varchar(60);

      删除gender列。

      alter table employee drop gender;

      表名改为user。

      rename table employee to user;

      修改表的字符集为utf8

      alter table user character set utf8;

      列名name修改为username

      alter table user change name username varchar(30);

数据的操作( CRUD )(重点) 插入数据( insert

  1. 插入数据的语法:
    • insert into 表名 (字段1,字段2,字段3) values (值1,值2,值3);
    • insert into 表名 values (值1,值2,值3);
  2. 注意事项
    • 插入的数据与字段类型必须是相同的。
    • 数据的大小范围在字段范围内
    • 值与字段一一对应
    • 字符串或者日期类型数据需要使用单引号

nsert into user values (1,'meimei','1956‐1‐1','1957‐1‐1','HR',5000,'meimeimei','xx');

修改数据( update

删除数据( delete

  1. 语法:delete from 表名 where 条件;

  2. 如果没有where条件,默认删除所有的数据。

  3. truncate 表名;删除表中所有的数据。delete from 表名; 也可以删除所有数据。

    • 区别: truncate先把你整个表删除掉,默默创建一个空的表(和原来的表结构是一样的)。
    • delete from 表名 一行一行的删除。(使用它)
    • 事物的概念:事物提交和事物回滚。

删除表中名称为'聪聪'的记录。

delete from user where username = '聪聪';

删除表中所有记录。

delete from user; drop table user;删除数据及

使用truncate删除表中记录。

查询数据( select )(重点) 基本的 select 语句

查询语句中使用运算和别名

在所有学生分数上加10分特长分。

select name,(math+10) m,(english+10) e,(chinese+10) c from stu;

统计每个学生的总分。

select name,(math+english+chinese) 总 分 from stu;

使用别名表示学生分数

select name,(math+english+chinese) 总 分 from stu;

where 子句中出现的运算

order by 对查询的结果进行排序

  1. 排序的语法
    • select * from 表名 where 条件 order by 列名 升序/降序;
  2. 升序和降序
    • order by 列名 asc;(升序,默认值)
    • order by 列名 desc;(降序)
  3. order by 子句必须出现在select语句的末尾。

语序

select ... from ... where ... group by ... having ... order by ...

* 固定的顺序:如果没有上述的条件,把关键字去掉就ok。

相关推荐
其实防守也摸鱼1 小时前
权限提升与横向移动:从内网渗透到域控的完整技术图谱
运维·服务器·数据库·安全·github·copilot·渗透
人生百态,人生如梦2 小时前
每日论文解读(9.1)——ReToolSQL:面向鲁棒Text-to-SQL的Agentic强化学习与工具增强两阶段训练框架
数据库·sql
DevOpenClub2 小时前
网页采集如何稳定输出结构化数据:JSON、链接与快照三阶段流水线
数据库·json·api
其实防守也摸鱼2 小时前
免杀与持久化入门:从载荷免杀到隐蔽通道的完整指南
运维·服务器·数据库·安全·github·copilot·渗透
SelectDB2 小时前
统一全文检索与 SQL 分析:Apache Doris 日志分析实践
运维·数据库·掘金技术征文
麻瓜code2 小时前
【MySQL】SQL优化实战:从慢查询定位到查询改写
数据库·sql·mysql
蓝鸟19743 小时前
Oracle HIS业务视图优化实战|VI_BQ_YWTX11从高耗费到秒级响应
数据库·oracle·his数据库调优·复合索引踩坑·is null索引问题·ql视图优化
数智启示录3 小时前
Apache Doris 4.0.8 混合检索实战(第 5 篇):三套系统只返回两条结果,一条 SQL 如何避开交集丢失
大数据·数据库·经验分享·sql·面试
今天AI了吗3 小时前
大模型技术全景(一):AI、机器学习、深度学习,三者的关系到底是什么?一文搞懂
数据库·人工智能·python·sql·深度学习·机器学习·rust
这个DBA有点耶3 小时前
RANGE/LIST/HASH/二级分区怎么选?分区表适用边界与隐藏代价
数据库·mysql·dba