一、MySQL的存储引擎
1 、存储引擎的类型:有MyISAM、InnoDB 、Memory、CSV等9种
2、 MyISAM与InnoDB类型主要区别
适用场合
使用MyISAM: 不需事务,空间小,以查询访问为主
使用InnoDB: 多删除、更新操作,安全性高,事务处理及并发控制
查看当前默认存储引擎
语法:SHOW VARIABLES LIKE ‘storage_engine%’;
修改存储引擎:
修改my.ini配置文件:default-storage-engine= InnoDB 把InnoDB改成其他存储
设置表的存储引擎:(此为单张表的存储引擎,如果某个表基本上不做并发事务或者大量修改,基本上都是用来查询,可以用这个方法来设置为MyISAM)
如果没有写存储引擎,则默认是InnoDB
语法: CREATE TABLE 表名(
#省略代码
)ENGINE=存储引擎;
举例: CREATE TABLE `myisam` (
id INT(4)
)ENGINE=MyISAM;
MyISAM类型表文件![](https://i-blog.csdnimg.cn/blog_migrate/5a84012a54b9e5c8dc6890c82139038b.png)
*.frm:表结构定义文件
*.MYD:数据文件
*.MYI:索引文件
InnoDB类型表文件
*.frm:表结构定义文件
ibdata1文件
注意:存储位置 因操作系统而异,可查my.ini
datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/"
innodb_data_home_dir="D:/MySQL Datafiles/"
DML语句——插入单条数据记录
语法: INSERT INTO 表名 [(字段名列表)] VALUES (值列表);
注意: 字段名是可选的,如省略则依次插入所有字段
多个列表和多个值之间使用逗号分隔
值列表和字段名列表一一对应
如插入的是表中部分数据,字段名列表必填
举例1: INSERT INTO `student`(`loginPwd`,`studentName`,`gradeId`,`phone`,`bornDate`)
VALUES('123','黄小平',1,'13956799999','1996-5-8');
举例2:
如果没写字段名,需要一一对应,不能缺,如果不想写数据,就用null。
如果插入的是表中部分数据,字段名列表必填,如果有设置默认值的字段,可以不写字段名和数据