一、介绍

MySQL数据操作: DML

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

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

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

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

二、插入数据INSERT

1. 插入完整数据(顺序插入)
语法一:
INSERT INTO 表名(字段1,字段2,字段3…字段n) VALUES(值1,值2,值3…值n); 语法二:
INSERT INTO 表名 VALUES (值1,值2,值3…值n); 2. 指定字段插入数据
语法:
INSERT INTO 表名(字段1,字段2,字段3…) VALUES (值1,值2,值3…); 3. 插入多条记录
语法:
INSERT INTO 表名 VALUES
(值1,值2,值3…值n),
(值1,值2,值3…值n),
(值1,值2,值3…值n); 4. 插入查询结果
语法:
INSERT INTO 表名(字段1,字段2,字段3…字段n)
SELECT (字段1,字段2,字段3…字段n) FROM 表2
WHERE …;

  往一张表里插记录可以用select代替values,把查的结果直接传给表相应的字段,查出来的结果必须和表的字段一一对应。

三、更新数据UPDATE

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

  更新mysql库下的user表,设置字段password=password('123'),用来将密码加密,where指定需要改掉密码的记录,用户为root且地址为localhost的记录。定位到记录后,把符合条件的password都进行修改。

四、删除数据DELETE

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

  删除符合条件的一些记录用delete。

  如果要删除整张表,可以用truncate。# 应该用truncate清空表,比起delete一条一条地删除记录,truncate是直接清空表,在删除大表时用它。

语法:
truncate 表名;
示例:
truncate student1;

五、查询数据SELECT

  单表查询:http://www.cnblogs.com/xiugeng/p/9028541.html

  多表查询:http://www.cnblogs.com/xiugeng/p/9030720.html

六、权限管理和Navicat工具

1、权限管理

  授权:对文件夹,对文件,对文件某一字段的权限。授权操作只能通过root用户!!

  查看帮助:help grant

  常用权限有:select,update,alter,delete all可以代表除了grant之外的所有权限。

#授权操作只能通过root用户!!

set global validate_password_policy=0;
set global validate_password_length=1;
# 安全设置问题,查看这个:http://www.jb51.net/article/95399.htm
创建账号:
  # 本地账号
  create user 'egon'@'localhost' identified by '1234'; # mysql -uegon -p123
  # 远程账号
  create user 'egon'@'192.168.31.10' identified by '1234'; # mysql -uegon -p123 -h 服务端ip
# 让一个网段内所有机器都可以登录
create user 'egon'@'192.168.31.%' identified by '1234';
# 让所有能Ping通机器都可以登录
create user 'egon'@'%' identified by '1234'; 授权级别
user:*.* 对所有库所有表
db:db1.* 对db1库里所有表
table_priv:db1.t1 对某一个表开放权限
columns_priv:id,name 对某一个字段开放权限 授权方法
# user级别 select * from mysql.user\G;可以查看授权情况
# 授权
grant select on *.*; 授权所有库所有表的select
grant select on *.* to 'egon'@'localhost';
grant all on *.* to 'egon'@'localhost'; 授权对所有库下所有表的权限(all不包含grant权限)
# 收回权限
revoke select on *.* from 'egon'@'localhost';
# db级别 select * from mysql.db\G;可以查看授权情况
# 授权
grant selcect on db1.* to 'egon'@'localhost';
# 收回权限
revoke select on db1.* from 'egon'@'localhost';
# table select * from mysql.tables_priv\G;查看授权情况
# 授权
grant select on db1.t2 to 'egon'@'localhost';
# 收回权限
revoke select on db1.t2 from 'egon'@'localhost';
# 字段级别
# 授权
grant select(id,name), update(age) on db1.t2 to 'egon'@'localhost'; # 字段的查看、字段的更新权限
# 收回权限
revoke select(id,name),update(age) from db1.t2 to 'egon'@'localhost';

2、Navicat

  在生产环境中操作MySQL数据库还是推荐使用命令行工具mysql,但在我们自己开发测试时,可以使用可视化工具Navicat,以图形界面的形式操作MySQL数据库

官网下载:https://www.navicat.com/en/products/navicat-for-mysql

网盘下载:https://pan.baidu.com/s/1bpo5mqj

需要掌握的基本操作

掌握:
#1. 测试+链接数据库
#2. 新建库
#3. 新建表,新增字段+类型+约束
#4. 设计表:外键
#5. 新建查询
#6. 备份库/表 #注意:
批量加注释:ctrl+?键
批量去注释:ctrl+shift+?键

最新文章

  1. iscroll5实现一个下拉刷新上拉加载的效果
  2. ESENT分布式数据存储
  3. SQL基础语法笔记教程整理
  4. nginx+tomcat+java部署总结
  5. Halcon相机标定
  6. hdu 1561 The more, The Better(树形dp,基础)
  7. ListView异步加载网络图片完美版之双缓存技术
  8. openstack 本地化
  9. 20-语言入门-20-Financial Management
  10. Spring Data JPA教程, 第六部分: Sorting(未翻译)
  11. [python]文本处理1.2
  12. [c language] getopt 其参数optind 及其main(int argc, char **argv) 参数解释
  13. Linux下访问文件的基本模式
  14. OpenApi开放平台架构实践
  15. 【莫比乌斯反演】BZOJ3309 DZY Loves Math
  16. 如何修复“网络路径”,错误代码0x80070035
  17. volatile和synchronized关键字
  18. 在Windows上安装Arduino的步骤
  19. jQuery - 几种异步提交方式
  20. java-web的mybatis的学习

热门文章

  1. 【spring boot】FilterRegistrationBean介绍
  2. postgresql数据库异步流复制hot standby环境搭建
  3. string[] 转换为 int[]
  4. CentOS 中查看软件的版本号
  5. 洛谷 P4036 [JSOI2008]火星人(splay+字符串hash)
  6. myeclipse启动后,卡在loading workbench界面
  7. 【前缀和】【two-pointer】【贪心】洛谷 P3143 [USACO16OPEN]钻石收藏家Diamond Collector 题解
  8. B - Toy Storage(POJ - 2398) 计算几何基础题,比TOYS多了个线段排序
  9. python3.6 request模块和ddt模块的安装
  10. Angular4+NodeJs+MySQL 入门-01