欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MySQL必知必会知识点备份

程序员文章站 2022-07-07 20:09:52
https://www.jianshu.com/p/294502893128 学习笔记https://blog.csdn.net/summer_huai/article/details/86134289 MySQL必知必会学习笔记(一)https://blog.csdn.net/summer_huai/article/details/86240296 MySQL必知必会学习笔记(二)SQL极简查询手册:1.数据库登录&&a......

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

本文地址:https://blog.csdn.net/qq_27383705/article/details/107139691