## 关于InnoDB 和MyISAM InnoDB 和 MyISAM 是 MySQL 数据库系统中两种不同的存储引擎,它们在数据存储、处理性能、并发控制和事务支持等方面有着显著的区别: 11,5 https://www.bilibili.com/video/BV1JG4y1Q7BX/?share_source=copy_web&vd_source=e89873197d277ae4c60212afabe4cac6 ------------ 插入insert 删除delete 更新update 约束:表中数据的限制条件,主键约束 primary key ##### 显示所有数据库 ``` show databases; ``` ##### 如果mydb1不存在,则创建它 ``` create database if not exists mydb1; ``` -- 修改数据库mydb1 编码为 utf8mb4 ``` alter database mydb1 character set utf8mb4; ``` -- 使用表 ``` use mydb1; ``` -- 创建 表emp1 ``` create table emp1( id int auto_increment primary key, name varchar(20), address varchar(20), birth date, tel varchar(30), salary double ); ``` -- 显示所有表名 ``` show tables; ``` -- 描述表结构 describe缩写 ``` desc emp1; ``` 更改 id 列为 INT auto_increment ``` alter table emp1 modify column id int auto_increment; ``` -- 删除 emp1 ``` drop table emp1; ``` -- emp1 插入 ``` insert into emp1(id,name,address,birth,tel,salary) values(1,'张三','河南','2004-03-22','133xx2222',10000.5); ``` 不设置关键字时 插入的 values 值与关键字顺序一一对应 ``` insert into emp1 values(2,'李四','河南','2003-03-03','112233',10000.5); ``` -- 批量插入 ``` insert into emp1 values(3,'李四','河南','2003-03-03','112233',10000.5), (4,'李四','河南','2003-03-03','112233',10000.5); ``` ``` insert into emp1 values(5,'李五','河南','2003-03-03','112233',10000.5), (6,'张刘','重庆','2003-03-03','112233',10000.5), (7,'李琦','上海','2003-03-03','112233',10000.5); ``` -- 插入一行 name 字段 和 address 字段,为定义的为 NULL ``` insert into emp1(name,address) values('李娜','武汉'); ``` -- 修改表名 ``` rename table emp1 to employee; ``` ``` rename table employee to emp1; ``` -- 添加关键字为 dept的一列 ``` alter table emp1 add dept varchar(20); ``` -- 改变关键字dept 为 department 类型varchar(20) ``` alter table emp1 change dept department varchar(20); ``` ``` alter table emp1 change department dept varchar(20); ``` -- 修改表emp1 删除列tel ``` alter table emp1 drop tel; ``` ``` alter table emp1 add tel varchar(20); ``` -- 返回emp1所有的数据 ``` select * from emp1; ``` -- 返回emp1 id字段(列)的数据 ``` select id from emp1; ``` -- 查询所有 name="张三"的数据 ``` select * from emp1 where name='张三'; ``` -- id 大于 6 的数据 ``` select * from emp1 where id > 6; ``` -- 删除 emp1 中字段 name 为“张三”的数据 ``` delete from emp1 where name='张三'; ``` -- 插入(恢复)张三这行数据 ``` insert into emp1 values(1,'张三','河南','2003-03-03','112233',10000.5); ``` -- 查看指定某个表的 创建语句 ``` show create table emp1; ``` -- 设置emp1 所有字段为 dept 的内容为“行政” ``` update emp1 set dept='行政'; ``` -- 设置 emp1 name为'张三' 的dept 为'开发' ``` update emp1 set dept='开发' where name='张三'; ``` -- 删除 emp1 的列tel ``` alter table emp1 drop column tel; ``` -- 增加 tel 列 ``` alter table emp1 add tel varchar(20); ``` ``` alter table emp1 add column tel varchar(20); ``` -- 重命名 列名tel 为 tel1 ``` alter table emp1 rename column tel to tel1; ``` ``` alter table emp1 rename column tel1 to tel; ``` -- 查询 emp1 id>2的数据 ``` select * from emp1 where id>2; ``` -- 查询 emp1 id>1且id<5 的数据 ``` select * from emp1 where id>1 and id<5; ``` -- 查询 emp1 (id>1且id<5) 和 (id<5且id>6) 的数据 ``` select * from emp1 where id>1 and id<5 or id>6 and id <9; ``` -- 查询 emp1 {id>1且(id<5和id>6)}且{id<9} 的数据 ``` select * from emp1 where id>1 and (id<5 or id>6) and id<9 ``` -- 更改 emp1 tel 列的默认值为'Unknown' ``` alter table emp1 modify tel varchar(20) default "Unknown"; ``` -- 修改 emp1 中 name 数据类型 varchar(50) ``` alter table emp1 modify column name varchar(50); ``` -- 查询 emp1 (id>1且id<5) 和 (id<5且id>6)且 id<9的数据  ``` select * from emp1 where id>1 and id<5 or id>6 and id <9; ``` 最后修改:2024 年 06 月 04 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏