27-进阶SQL-存储引擎
注意:数据库中经常会用到的索引就在引擎层
案例:创建 账户表(熟悉存储引擎)
CREATE TABLE account( id int auto_increment primary key comment "主键ID", name varchar(10) comment "姓名", money int comment "余额" ) comment "账户表"; INSERT INTO account(id, name, money) VALUES (null, "张三", 2000), (null, "李四", 2000);
1)查询建表语句(DDL-数据定义语言的内容)
-- 查询建表语句 SHOW CREATE TABLE account;
ENGINE = InnoDB:没有指定存储引擎时,默认的存储引擎为InnoDB
AUTO_INCREMENT:id是自增的,并且下一条的id为3
DEFAULT CHARSET:当前表的字符集默认为utf8mb4
COLLATE :当前表的排序方式为utf8mb4_general_ci
2)查询当前数据库支持的存储引擎(常用的数据引擎就是InnoDB)
-- 查询当前数据库支持的存储引擎 SHOW ENGINES;
3)创建表 my_myisam,并指定 MyISAM存储引擎
-- 创建表 my_myisam,并指定 MYISAM存储引擎 CREATE TABLE my_myisam( id int, name varchar(10) ) ENGINE = MyISAM; -- 查询建表语句 SHOW CREATE TABLE my_myisam;
InnoDB存储引擎(最常用的存储引擎)
InnoDB逻辑存储结构
从图中可以看到,一个区Extent的大小是固定的1M,一个页Page的大小也是固定的16K,也就是说一个区Extent中可以包含64个页Page。
MyISAM存储引擎
Memory存储引擎
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?