https://zhenganwen.top/tags/MySQL/ 大佬笔记
https://www.jianshu.com/p/294502893128 <MySQL必知必会>学习笔记
https://blog.csdn.net/summer_huai/article/details/86134289 MySQL必知必会学习笔记(一)
https://blog.csdn.net/summer_huai/article/details/86240296 MySQL必知必会学习笔记(二)
SQL极简查询手册:
- 1.数据库登录&&退出
- 登录:mysql -u用户名 -p密码
- 登出:exit 或者 qiut 或者 /q
- 2.数据库的查增删
- 查看所有数据库:SHOW DATABASES ;
- 新增一个数据库:CREATE DATABASE 库名 ;
- 删除指定数据库:DROP DATABASE 库名;
- 其他:
- -使用指定数据库:USE 库名;
- - 查看指定数据库编码:SHOW CREATE DATABASE 库名;
- -修改指定数据库的编码:ALTER DATABASE 库名 [DEFAULT] CHARACTER SET [=] charset_name;
- 3.数据表的查增删改
- 查看当前数据库下的所有表: SHOW TABLES;
- 新增表:REATE TABLE [ IF NOT EXISTS] 表名(字段名称1 字段类型1 [完整性约束条件],字段名称2 字段类型 2[完整性约束条件],.....)engine=引擎名称 charset ='编码方式';
- 删除表:DROP TABLE 表名;
- 修改表名:ALTER TABLE 表名 RENAME 重命名;
- 其他-完整性约束条件:
- >PRIMARY KEY 主键
- >AUTO_INCREMENT 自增长(初始值1)
- >NOT NULL非空
- >FORENGN外键
- >UNIQUE KEY 唯一
- >DEFAULT 默认
- >UNSIGNED 无符号
- 其他-完整性约束条件:
- 4.数据表内字段的查增删改
- 查看表结构:DESC 表名;
- 新增字段:ALTER TABLE 表名 ADD 字段名 字段类型 [完整性约束条件] [FRIST | AFTER field_name];
- 删除字段: ALTER TABLE 表名 DROP 字段名;
- 修改字段:ALTER TABLE 表名 CHANGE 旧字段名称 新字段名称 字段类型 [完整性约束条件] [FRIST | AFTER 字段名称];
- 5.数据表内的操作,数据的插入,删除,更新
- 插入数据:
- 普通插入:INSERT 表名 VALUES (值1,值2,值3,...); //这里要按照字段顺序进入值插入
- 指定字段插入:INSERT 表名 (字段名称1,字段名称2....) VALUES (值1,值2....);//如果插入自增字段,用DEFAULT关键字即可。
- 同时插入多条记录:INSERT 表名 (字段名称1,字段名称2.....) VALUES (值1,值2....),(值1,值2....),(值1,值2....)
- 通过SET形式插入记录:INSERT tb_name SET 字段名称1=值1,字段名称2=值2,字段名称3=值3
- 删除数据:
- 删除单行:DELETE FROM tb_name [WHERE 条件][ORDER BY 字段名称] [LIMIT 限制条数];
- 清空数据表: TRUNCATE [TABLE] tb_name;
- 更新数据:UPDATA 表名 SET 字段名称=值,... [WHERE 条件] [ORDER BY 字段名称] [LIMIT 限制条数];
- 插入数据:
- 6.单表查询(比较常用)
- 查询整个表:SELECT * FROM tb_name;
- 查询字段:SELECT field1,field2,field3 FROM tb_name;
- 按条件查询:SELECT field1,field2,field3 FROM tb_name WHERE 条件;
- 对查询结果排序:SELECT field1,field2,field3 FROM tb_name WHERE 条件 ORDER BY field_name [ASC|DESC];升序/降序
- 限制条数:SELECT * FROM tb_name LIMIT 显示结果条数;
- 7.链接查询(多表联合):
- 内连接查询:SELECT field1 field2 field3 FROM tb_name1 JOIN tb_name2 on tb_name1.field1=tb_name2.field1;
- 8.安全权限相关:
- 1. SELECT、INSERT、UPDATE和DELETE权限永远是应该分配给用户的,这样才能让用户(以及相关的PHP页面)读取和编辑数据表。
- 2. CREATE、ALTER、INDEX、DROP 和CREATE TEMPORARY TABLES等权限允许用户改变数据库的结构。要不要把这几项权限授予用户需要根据具体情况来决定。
- 3. GRANT权限允许用户把他或她自己的权限转授给其他用户。从信息安全的角度考虑,这项权限通常不应该授予给用户。
- 4. LOCKTMBLES权限将允许用户使用LOCK命令锁定数据表。这项权限只对极少数的特殊场合才是必不可少的:比如说,用户需要把多条相互关联的SQL当做一个单元来执行,并且不希望有其他用户在这些命令的执行过程中修改有关的数据。作为LOCK TABLES权限的一种替代品,lnnoDB数据表和事务操作往往能把事情做得更好。
- 9.密码管理
- 设置root密码:UPDATE user SET password=password('root') WHERE user='root'
- 重新命名root用户:UPDATE user SET user='myroot' WHERE user='root'
- 删除匿名用户:DELETE FROM uSer MHERE user=''
- 10.备份与恢复
- 导出数据库到本地:mysqldump -u username -ppassword db_name > dbname.sql
- 导入本都sql文件到空数据库:新建一个库,然后source a.sql;
- 没有备份导致误删数据,如何恢复?:https://www.cnblogs.com/kevingrace/p/5904800.html