例如:在students表中插入两条数据,张三和李四
mysql> INSERT INTO students (Name,Gender) VALUE ('ZhangSan','M'),('LiSi','F');
Query OK, 2 rows affected (0.00 sec)
Records: 2 Duplicates: 0 Warnings: 0
查看数据
1
2
3
4
5
6
7
8
mysql> SELECT * FROM students;
+----------+------+--------+--------+
| Name | Age | Gender | Course |
+----------+------+--------+--------+
| ZhangSan | NULL | M | NULL |
| LiSi | NULL | F | NULL |
+----------+------+--------+--------+
2 rows in set (0.01 sec)
插入一个用户,所有字段都有值:
注意,所有字段都有值,就不需要指定字段名
1
2
3
4
5
6
7
8
9
mysql> INSERT INTO students VALUES ('ZengChengpeng',28,'M','IT');
Query OK, 1 row affected (0.00 sec)
mysql> SELECT * FROM students WHERE Name='ZengChengpeng';
+---------------+------+--------+--------+
| Name | Age | Gender | Course |
+---------------+------+--------+--------+
| ZengChengpeng | 28 | M | IT |
+---------------+------+--------+--------+
1 row in set (0.00 sec)
修改数据:
UPDATE tb_name SET column=value WHERE 条件
例如:将ZengChengpeng的Course课程名称改为Develop
1
2
3
4
5
6
7
8
9
10
mysql> UPDATE students SET Course='Develop' WHERE Name='ZengChengpeng';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> SELECT * FROM students WHERE Name='ZengChengpeng';
+---------------+------+--------+---------+
| Name | Age | Gender | Course |
+---------------+------+--------+---------+
| ZengChengpeng | 28 | M | Develop |
+---------------+------+--------+---------+
1 row in set (0.00 sec)
SELETE语句:
selete语句分为两种情况,
1
2
3
4
5
6
7
8
9
10
选择:指定以某字段作为搜索码,做逻辑比较,筛选符合条件的行。WHERE指定选择条件
投影:指定以某字段作为搜索码,做逻辑比较,筛选符合条件的字段。
mysql> SELECT Name,Course FROM students WHERE Gender='M';
+---------------+---------+
| Name | Course |
+---------------+---------+
| ZhangSan | NULL |
| ZengChengpeng | Develop |
+---------------+---------+
删除数据:
DELECT FROM tb_name WHERE 条件;
创建用户:
CREATE USER 'USERNAME'@'HOST' IDENTIFIED BY 'PASSWORD';
删除用户:
DROP USER 'USERNAME'@'HOST';
HOST:
IP:
HOSTNAME:
NETWORK:
通配符: 通配符用引号引起来
_:下划线匹配任意单个字符:例如172.16.0._
%:匹配任意字符:
jerry@'%'
用户权限:
添加权限:
GRANT pri1,pri2,... ON DB_NAME.TB_NAME TO 'USERNAME'@'HOST' [IDENTIFIED BY 'PASSWORD'];
pri1 pri2表示权限名称,所有权限用ALL PRIVILEGES表示
取消权限:
REVOKE pri1,pri2,... ON DB_NAME.TB_NAME FROM 'USERNAME'@'HOST';
创建用户示例:
1
mysql> CREATE USER 'jerry'@'%' IDENTIFIED BY 'jerry';
查看用户授权:
SHOW GRANTS FOR 'USERNAME'@'HOST';
1
2
3
4
5
6
mysql> SHOW GRANTS FOR jerry@'%';
+------------------------------------------------------------------------------------------------------+
| Grants for jerry@% |
+------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'jerry'@'%' IDENTIFIED BY PASSWORD '*09FB9E6E2AA0750E9D8A8D22B6AA8D86C85BF3D0' |
+------------------------------------------------------------------------------------------------------+
示例:给jerry用户test_db这个数据库所有表的所有权限
1
2
3
4
5
6
7
8
9
10
mysql> GRANT ALL PRIVILEGES ON test_db.* TO 'jerry'@'%';
Query OK, 0 rows affected (0.00 sec)
mysql> SHOW GRANTS FOR 'jerry'@'%';
+------------------------------------------------------------------------------------------------------+
| Grants for jerry@% |
+------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'jerry'@'%' IDENTIFIED BY PASSWORD '*09FB9E6E2AA0750E9D8A8D22B6AA8D86C85BF3D0' |
| GRANT ALL PRIVILEGES ON `test_db`.* TO 'jerry'@'%' |
+------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)
取消所有权限:
1
2
3
4
5
6
7
8
9
mysql> REVOKE ALL PRIVILEGES ON test_db.* FROM jerry@'%';
Query OK, 0 rows affected (0.00 sec)
mysql> SHOW GRANTS FOR 'jerry'@'%';
+------------------------------------------------------------------------------------------------------+
| Grants for jerry@% |
+------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'jerry'@'%' IDENTIFIED BY PASSWORD '*09FB9E6E2AA0750E9D8A8D22B6AA8D86C85BF3D0' |
+------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)