一 介绍

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. 语法二:
  6. INSERT INTO 表名 VALUES (值1,值2,值3…值n);
  7.  
  8. 2. 指定字段插入数据
  9. 语法:
  10. INSERT INTO 表名(字段1,字段2,字段3…) VALUES (值1,值2,值3…);
  11.  
  12. 3. 插入多条记录
  13. 语法:
  14. INSERT INTO 表名 VALUES
  15. (值1,值2,值3…值n),
  16. (值1,值2,值3…值n),
  17. (值1,值2,值3…值n);
  18.  
  19. 4. 插入查询结果
  20. 语法:
  21. INSERT INTO 表名(字段1,字段2,字段3…字段n)
  22. SELECT (字段1,字段2,字段3…字段n) FROM 2
  23. WHERE …;

三 更新数据UPDATE

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

四 删除数据DELETE

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

五 查询数据SELECT

单表查询:http://www.cnblogs.com/moyand/p/9033536.html

多表查询:http://www.cnblogs.com/moyand/p/9033921.html

MySQL之汇总数据(AVG,COUNT,MAX,MIN,SUM)

六 权限管理

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

权限相关操作

MySQL 第四篇:数据操作的更多相关文章

  1. mysql第四篇:数据操作之多表查询

    mysql第四篇:数据操作之多表查询 一.多表联合查询 #创建部门 CREATE TABLE IF NOT EXISTS dept ( did int not null auto_increment ...

  2. mysql第四篇--SQL逻辑查询语句执行顺序

    mysql第四篇--SQL逻辑查询语句执行顺序 一.SQL语句定义顺序 SELECT DISTINCT <select_list> FROM <left_table> < ...

  3. mysql第四篇:数据操作

    第四篇:数据操作 一.数据操作介绍 在MySQL管理软件中,可以通过SQL语句中的DML语言来实现数据的操作 1.INSERT实现数据的插入 2.UPDATE实现数据的更新 3.DELETE实现数据的 ...

  4. mysql四:数据操作

    一.介绍 MySQL数据操作: DML ======================================================== 在MySQL管理软件中,可以通过SQL语句中的 ...

  5. Nhibernate系列学习之(四) 数据操作

    数据操作,在这里主要介绍INSERT.UPDATE.DELETE.我们在使用NHibernate的时候,如果只是查询数据,不需要改变数据库的值,那么是不需要提交或者回滚到数据库的. 一.INSERT ...

  6. mysql第四篇:数据操作之单表查询

    单表查询 一.简单查询 -- 创建表 DROP TABLE IF EXISTS `person`; CREATE TABLE `person` ( `id` ) NOT NULL AUTO_INCRE ...

  7. Python操作Mysql数据库进阶篇——查询操作详解(一)

    前面我们已经介绍了在Python3.x中如何连接一个Mysql数据库,以及怎么样对这个数据库创建一个表,增删改查表里的数据.想必大家对Mysql数据库和简单的sql语句有了一定的了解,其实sql语句博 ...

  8. MySQL(四)数据备份与还原

    数据备份与还原: 备份:将当前已有的数据或者记录保留 还原:将已经保留的数据恢复到对应的表中 为什么要做备份还原: 1.防止数据丢失:被盗.误操作 2.保护数据的记录 数据备份还原的方式很多:数据表备 ...

  9. 多线程(四)~数据操作的原子性,使用原子性操作AutomicInteger替换非原子性的i++的操作

    这一章,我们要来验证volatile关键字不是原子性的,OK,还是用代码来说话. ①.线程类,操作i++ 500次 package com.multiThread.thread; publicclas ...

随机推荐

  1. prometheus-operator 监控 Rabbitmq集群

    首先我们监控服务需要知道prometheus-operator是如何去工作的,才好去写相关的yaml配置,这里我划分成了5个部分,如果容器服务本身就以k8s来编排的,那就只需要三步,这里因为我的rab ...

  2. Tomcat ngxin 反向代理

    tomcat nginx 反向代理 安装nginx yum直接安装 yum install nginx –y 也可以编译安装 这是用编译安装,新手可以用yum安装 配置文件在 /etc/nginx/c ...

  3. 第十三次作业psp

    psp 进度条 代码累积折线图 博文累积折线图 psp饼状图

  4. Daily Scrum (2015/11/8)

    由于编译大作业临近deadline以及各项选修课即将结课,虽然PM强调软工任务也很紧迫,但是大多数成员表示今天想请假一天.符美潇今天把自己所负责的数据库编码部分和谢金洛的UI进行了对接.在测试过程中发 ...

  5. 渡过OO的死劫,了解规格的意义——OO第三次博客总结

    当熬过了一次次黑暗,迎接我们的却是被扣的惨不忍睹的JSF ┭┮﹏┭┮ 一.总结调研 规格的历史 传统科学的特点是发现世界,而软件的特点是构造世界.软件的最底层就是0,1,两个离散的值.程序设计语言的三 ...

  6. Chapter 11 软件演化

    软件一直在不断地演化发展,人们通常通过软件维护和软件再工程解决软件的缺陷.软件维护可以分为改正性维护.适应性维护和完善性维护几种类型.软件维护受开发过程影响大.软件维护困难大.软件维护成本高.软件维护 ...

  7. java 框架 面试 2

    1.谈谈你对Struts的理解. 答: 1. struts是一个按MVC模式设计的Web层框架,其实它就是一个大大的servlet,这个Servlet名为ActionServlet,或是ActionS ...

  8. Android笔记-1

    1.点击按钮出现小窗口(响应事件) 配置方式: Activity_main.xml文件中:<Button (输入)android: onClick=”test1” /> MainActiv ...

  9. wcf服务查看工具

    文章:接口测试工具soapUI(一) 文章:VS自带WCF测试客户端简单介绍

  10. week3a:个人博客作业

    1.博客上的问题 阅读下面程序,请回答如下问题: using System; using System.Collections.Generic; using System.Text; namespac ...