MySQL学习日志四,数据表的类型
-- 关于数据库引擎
/*
INNODB 默认使用
MYISAM 早些年使用
*/
区别 | MYISAM | INNODB |
---|---|---|
事务支持 | 不支持 | 支持 |
数据行锁定 | 不支持 | 支持 |
外键约束 | 不支持 | 支持 |
全文索引 | 支持 | 不支持 |
表空间大小 | 较小 | 较大,约为MYISAM2倍 |
常规使用操作:
- MYISAM 节约空间,速度较快
- INNODB 安全性高,事务处理,多表用户操作
在物理空间存在的位置
所有数据都存在data目录下面
本质还是文件的存储
MySQL引擎在物理文件上的区别
- INNODB在数据库表中只有一个*.frm文件,以及上级目录下的ibdata1文件
- MYISAM 对应文件
*.frm 表结构的定义文件
*.MYD 数据文件(data)
*.MYI 索引文件(index)
设置数据库表的字符集编码
CHARSET = utf8
不设置的话,会是mysql默认的字符集编码(不支持编码)
-- 修改表名
ALTER TABLE 【旧表名】 RENAME AS 【新表名】
-- 增加表的字段
ALTER TABLE 表名 ADD 字段名 列属性
-- 修改表的字段(重命名,修改约束)
ALTER TABLE 【表名】 CHANGE 【字段名】【列属性[]】
--删除表的字段
ALTER TABLE 表名 DROP 字段名
删除
- 删除表的字段:ALTER TABLE IF EXISTS 表名 DROP 字段名
所有的创建和删除操作尽量加上判断,以免出错: IF EXISTS
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人