mysql四:数据操做

1、介绍

MySQL数据操做: DMLhtml

========================================================mysql

在MySQL管理软件中,能够经过SQL语句中的DML语言来实现数据的操做,包括sql

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

========================================================数据库

2、插入数据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,把查的结果直接传给表相应的字段,查出来的结果必须和表的字段一一对应。安全

3、更新数据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都进行修改。ide

4、删除数据DELETE

语法:
    DELETE FROM 表名 
        WHERE CONITION;

示例:
    DELETE FROM mysql.user 
        WHERE password=’’;

练习:
    更新MySQL root用户密码为mysql123
    删除除从本地登陆的root用户之外的全部用户

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

  若是要删除整张表,能够用truncate。# 应该用truncate清空表,比起delete一条一条地删除记录,truncate是直接清空表,在删除大表时用它测试

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

5、查询数据SELECT

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

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

6、权限管理和Navicat工具

一、权限管理

  受权:对文件夹,对文件,对文件某一字段的权限。受权操做只能经过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'; 

二、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+?键
相关文章
相关标签/搜索