【一】操作库
【1】创库#
create database [if not exists] <数据库名>[charset=utf8];
# 创建数据库的时候建议指定编码
【2】查库#
show databases; #查所有数据库
show create database<数据库名>; #查一个数据库
【3】改库#
alter database <数据库名> [charset=<编码>];
# 更改数据库的编码
【4】删库#
drop database [if exists] <数据库名>;
#删库跑路
【二】操作表
- 所有对表的操作都可以使用绝对路径的方式,这样就可以做到不切换数据库,也能对别的数据库的表进行操作
select database();
use 数据库名;
【1】增表#
create table <表名>(
<字段名1> <字段类型> [(宽度)] [约束条件],
<字段名2> <字段类型> [(宽度)] [约束条件],
<字段名3> <字段类型> [(宽度)] [约束条件]
);
【2】查表#
show tables;
show tables like <'表名'>;
describe 表名;
desc 表名;
show create table <表名> [/G]
show create table <表名> [/g]
【3】改表#
alter table <表名> add <字段名> <字段类型> [(宽度)] [约束条件] [first|after <字段名>]
alter table <表名> drop <字段名>; # 只能一个个删,不能一次删多个字段
alter table <表名> modify <字段名> <字段类型> [(宽度)][约束条件];
alter table <表名> change <旧字段名> <新字段名> <新字段类型> [(宽度)] [约束条件];
alter table <旧表名> rename to <新表名>;
alter table <表名> engine= <引擎名>
【4】删表和复制表#
drop table <表名>;
create table <表名> select * from <被复制的表名>;
create table <表名> like <被复制的表名>;
【三】操作记录
【1】增记录#
insert into <表名> (字段1,字段2....) values(记录1,记录2....);
【2】查记录#
select * from <表名>
select <字段名> from <表名>
【3】改记录#
update <表名> set <字段名> = <修改的记录> where <条件>
【4】删记录#
delete from <表名> where <条件>;
【四】SQL语句分类
|
|
|
DDL |
数据库定义语言,用来定义和管理数据库或者数据表 |
create,alter,drop |
DML |
数据库操纵语言,用来操纵数据 |
insert,update,delete |
DQL |
数据库 查询语言,用来查询数据 |
select |
DCL |
数据库控制语言,权限控制 |
grant,revoke,commit,rollback |
【五】存储引擎
【1】查看所有存储引擎#
show engien
【2】引擎介绍#
- InnoDB:
- 默认的存储引擎,从 MySQL 5.5 开始。
- 支持事务处理(ACID兼容)、行级锁定和外键。
- 适用于需要高可靠性和事务处理的应用。
- MyISAM:
- 在 MySQL 5.5 之前是默认存储引擎。
- 提供高速存取和全文搜索能力。
- 不支持事务处理和行级锁定,支持表级锁定。
- 适用于只读或插入频繁的应用。
- MEMORY:
- 数据存储在内存中,提供高速访问。
- 适合于临时表和快速读取的场景。
- 重启数据库后,数据会丢失。
【六】数据类型
数值类型#
- 整型:包括
TINYINT
, SMALLINT
, MEDIUMINT
, INT
, BIGINT
。这些类型用于存储整数,并且可以指定是否带符号(signed/unsigned)。
- 浮点数和双精度:
FLOAT
和 DOUBLE
。用于存储小数。
- 定点数:
DECIMAL
。用于存储精确的小数,常用于财务计算。
日期和时间类型#
DATE
:仅存储日期。
TIME
:仅存储时间。
DATETIME
:存储日期和时间。
TIMESTAMP
:存储日期和时间,通常用于记录事件发生的时间。
YEAR
:存储年份。
字符串类型#
-
CHAR
(定长字符串)
- char(10)最多能存10个字符,如果超过10个会直接报错,如果不足十个,会空格补齐
- 缺点:浪费空间
- 优点:存储速度快
- 范围:0-255字符
-
VARCHAR
(可变长度字符串)
- varchar(10)最多能存10个字符,如果超果10个字符会直接报错,如果不足10个,直接存。
- 缺点:存储速度相对慢
- 优点:不浪费内存
- 范围0-65535字节
- 最大字符数 = (65535-行其他字段总字节数-null标志字节数-长度标志字节数)/字符集单字符最大字节数
-
枚举类型#
create table t1(
id int,
name varcher(15),
gender enum('male','female','other')
)
-
create table t1(
id int,
name varchar(15),
hobby set('somke','game','girl'))
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)