一 介绍

MySQL数据操作: DML

========================================================

在MySQL管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括

  1. 使用INSERT实现数据的插入
  2. UPDATE实现数据的更新
  3. 使用DELETE实现数据的删除
  4. 使用SELECT查询数据以及。

========================================================

本节内容包括:

插入数据
更新数据
删除数据
查询数据

二 插入数据INSERT

  1. 1. 插入完整数据(顺序插入)
  2. 语法一:
  3. INSERT INTO 表名(字段1,字段2,字段3…字段n) VALUES(值1,值2,值3…值n);
  4. 语法二:
  5. INSERT INTO 表名 VALUES (值1,值2,值3…值n);
  6. 2. 指定字段插入数据
  7. 语法:
  8. INSERT INTO 表名(字段1,字段2,字段3…) VALUES (值1,值2,值3…);
  9. 3. 插入多条记录
  10. 语法:
  11. INSERT INTO 表名 VALUES
  12. (值1,值2,值3…值n),
  13. (值1,值2,值3…值n),
  14. (值1,值2,值3…值n);
  15. 4. 插入查询结果
  16. 语法:
  17. INSERT INTO 表名(字段1,字段2,字段3…字段n)
  18. SELECT (字段1,字段2,字段3…字段n) FROM 2
  19. WHERE …;

三 更新数据UPDATE

  1. 语法:
  2. UPDATE 表名 SET
  3. 字段1=值1,
  4. 字段2=值2,
  5. WHERE CONDITION;
  6. 示例:
  7. UPDATE mysql.user SET password=password(‘123’)
  8. where user=’root and host=’localhost’;

四 删除数据DELETE

  1. 语法:
  2. DELETE FROM 表名
  3. WHERE CONITION;
  4. 示例:
  5. DELETE FROM mysql.user
  6. WHERE password=’’;
  7. 练习:
  8. 更新MySQL root用户密码为mysql123
  9. 删除除从本地登录的root用户以外的所有用户

五 权限管理

  1. #授权表
  2. user #该表放行的权限,针对:所有数据,所有库下所有表,以及表下的所有字段
  3. db #该表放行的权限,针对:某一数据库,该数据库下的所有表,以及表下的所有字段
  4. tables_priv #该表放行的权限。针对:某一张表,以及该表下的所有字段
  5. columns_priv #该表放行的权限,针对:某一个字段
  6. #按图解释:
  7. user:放行db1db2及其包含的所有
  8. db:放行db1,及其db1包含的所有
  9. tables_priv:放行db1.table1,及其该表包含的所有
  10. columns_prive:放行db1.table1.column1,只放行该字段
  1. #创建用户
  2. create user 'egon'@'1.1.1.1' identified by '123';
  3. create user 'egon'@'192.168.1.%' identified by '123';
  4. create user 'egon'@'%' identified by '123';
  5. #授权:对文件夹,对文件,对文件某一字段的权限
  6. 查看帮助:help grant
  7. 常用权限有:select,update,alter,delete
  8. all可以代表除了grant之外的所有权限
  9. #针对所有库的授权:*.*
  10. grant select on *.* to 'egon1'@'localhost' identified by '123'; #只在user表中可以查到egon1用户的select权限被设置为Y
  11. #针对某一数据库:db1.*
  12. grant select on db1.* to 'egon2'@'%' identified by '123'; #只在db表中可以查到egon2用户的select权限被设置为Y
  13. #针对某一个表:db1.t1
  14. grant select on db1.t1 to 'egon3'@'%' identified by '123'; #只在tables_priv表中可以查到egon3用户的select权限
  15. #针对某一个字段:
  16. mysql> select * from t3;
  17. +------+-------+------+
  18. | id | name | age |
  19. +------+-------+------+
  20. | 1 | egon1 | 18 |
  21. | 2 | egon2 | 19 |
  22. | 3 | egon3 | 29 |
  23. +------+-------+------+
  24. grant select (id,name),update (age) on db1.t3 to 'egon4'@'localhost' identified by '123';
  25. #可以在tables_priv和columns_priv中看到相应的权限
  26. mysql> select * from tables_priv where user='egon4'\G
  27. *************************** 1. row ***************************
  28. Host: localhost
  29. Db: db1
  30. User: egon4
  31. Table_name: t3
  32. Grantor: root@localhost
  33. Timestamp: 0000-00-00 00:00:00
  34. Table_priv:
  35. Column_priv: Select,Update
  36. row in set (0.00 sec)
  37. mysql> select * from columns_priv where user='egon4'\G
  38. *************************** 1. row ***************************
  39. Host: localhost
  40. Db: db1
  41. User: egon4
  42. Table_name: t3
  43. Column_name: id
  44. Timestamp: 0000-00-00 00:00:00
  45. Column_priv: Select
  46. *************************** 2. row ***************************
  47. Host: localhost
  48. Db: db1
  49. User: egon4
  50. Table_name: t3
  51. Column_name: name
  52. Timestamp: 0000-00-00 00:00:00
  53. Column_priv: Select
  54. *************************** 3. row ***************************
  55. Host: localhost
  56. Db: db1
  57. User: egon4
  58. Table_name: t3
  59. Column_name: age
  60. Timestamp: 0000-00-00 00:00:00
  61. Column_priv: Update
  62. rows in set (0.00 sec)
  63. #删除权限
  64. revoke select on db1.* to 'alex'@'%';
  65. 权限相关操作

mysql数据增删查授权的更多相关文章

  1. SQL Server 表的管理_关于数据增删查改的操作的详解(案例代码)

    SQL Server 表的管理_关于数据增删查改的操作的详解(案例代码)-DML 1.SQL INSERT INTO 语句(在表中插入) INSERT INTO 语句用于向表中插入新记录. SQL I ...

  2. Mysql常用增删查改及入门(二)

    常用:数据库常用就是DML:增删查改 1.增加数据: insert into 表名 values (值1,值2...); insert into 表名 (字段1,字段2) values (值1,值2) ...

  3. Python对MySQL进行增删查改

    python连接MySQL数据库:pymysql # 测试操作 import pymysql # 打开数据库 db = pymysql.connect("localhost", & ...

  4. 学习记录——使用PHP实现数据增删查改等基本功能(前后端分离)

    萌新初次学习服务器端语言,分享学习经验 实现功能:1.显示数据表    2.对数据进行分页    3.对数据进行增删查改 由于本萌新采用前后端完全分离方案,所以数据传输用的ajax,为了提高代码的复用 ...

  5. VisualStudio 连接 MySql 实现增删查改

    首先创建数据库,建立一个用户登录表 2.visualStudio默认是不支持MySql的,要想通过Ado.Net 操作MySql 需要在管理NeGet包添加对MySql.Data  和 MySql.D ...

  6. Django 之restfromwork 序列化组件实现数据增删查改

    rest-framework序列化之Serializer models.py from django.db import models # Create your models here. class ...

  7. HBase1.0.0 实现数据增删查

    HBase1.0.0 即Hadoop 2.6 采用maven 的方式实现HBase数据简单操作 import java.io.IOException; import java.util.ArrayLi ...

  8. 后端Spring Boot+前端Android交互+MySQL增删查改(Java+Kotlin实现)

    1 前言&概述 这篇文章是基于这篇文章的更新,主要是更新了一些技术栈以及开发工具的版本,还有修复了一些Bug. 本文是SpringBoot+Android+MySQL的增删查改的简单实现,用到 ...

  9. mysql数据库,数据表,数据的增删查改语句

    查询mysql支持的引擎 show engines; 查询mysql支持的字符集 show character set; 设置mysql默认存储引擎 set default_storage_engin ...

随机推荐

  1. spring3: Aspectj后置返回通知

    Aspectj后置返回通知 接口: package chapter1.server; public interface IHelloService2 { public int sayAfterRetu ...

  2. springmvc跨域(转)

    跨域资源共享 CORS 详解  原文链接:http://www.ruanyifeng.com/blog/2016/04/cors.html   作者: 阮一峰 日期: 2016年4月12日 CORS是 ...

  3. 原创:Angular新手容易碰到的坑,随时更新,欢迎订阅

    在Angular群里回答新手问题一段时间了,有一些Angular方面的坑留在这里备查,希望能对各位有所帮助.这个文章将来会随时更新,不会单独开新章,欢迎各位订阅. Q1. <div ng-inc ...

  4. http keep - alive 与 长连接

    http1.0 2.0 1.1区别 你可以把 WebSocket 看成是 HTTP 协议为了支持长连接所打的一个大补丁,它和 HTTP 有一些共性,是为了解决 HTTP 本身无法解决的某些问题而做出的 ...

  5. phpcms V9二级目录下分页路径不正确问题的彻底解决方法

    在用phpcms V9做二次开发的时候,我们有时候会把一个栏目生成到根目录下,而且这个栏目又有子栏目,我们生成静态的时候分页会出现问题,就是分页的路径的地址错误.有一种解决方法就是,把这个栏目生成动态 ...

  6. 使用wsgiref库diy简单web架构

    1. 了解CGI和WSGI (1)CGI CGI(Common Gateway Interface)通用网关接口,即接口协议,前端向服务器发送一个URL(携带请求类型.参数.cookie等信息)请求, ...

  7. EL表达式可以直接放在url的“ ”里面

    <div class="hc-prm-search search flr"> <form action="/userCenter/projectInfo ...

  8. bzoj 1220 跳蚤

    Written with StackEdit. Description \(Z\)城市居住着很多只跳蚤.在\(Z\)城市周六生活频道有一个娱乐节目.一只跳蚤将被请上一个高空钢丝的正中央.钢丝很长,可以 ...

  9. leetcode_sql_3,181,182,183

    181. Employees Earning More Than Their Managers The Employee table holds all employees including the ...

  10. 洛谷P3585 [POI2015]PIE

    传送门 题目大意:有个n*m的格子图,要求'x'点要被染成黑色 有个a*b的印章,'x'是可以染色的印章上的点. 要求用印章去染色格子 (1)印章不可以旋转. (2)不能把墨水印到纸外面. (3)纸上 ...