3.数据操作

数据操作就是在数据表中对相应字段中所存储的内容进行增删改查操作。
增添数据:
新增数据可分为给全表字段添加数据和部分字段添加数据:
1)给全表字段插入数据,不需要指定字段列表;要求数据的值出现的顺序必须与表中字段顺序一致;非数值数据都需要使用引号扩住

Insert into 表名 values(值列表)[ ,(值列表) 可一次性插入多条数据]
# 给学生表全表字段添加数据
mysql> insert into student values(1,'初一二班','男','十九');
Query OK, 1 row affected (0.00 sec)

mysql> select * from student;
+------+--------------+------+--------+
| id   | class        | sex  | name   |
+------+--------------+------+--------+
|    1 | 初一二班     | 男   | 十九   |
+------+--------------+------+--------+
1 row in set (0.00 sec)

2)给部分字段插入数据,需要选定字段列表;字段列表出现的顺序与字段无关;但值列表顺序必须与选定字段顺序一致

insert into 表名 (字段列表) values (值列表)[,(值列表)]
# 只给学生表的name字段添加数据

mysql> insert into student (name) values ('科比');
Query OK, 1 row affected (0.00 sec)

mysql> select * from student;
+------+--------------+--------+
| id   | class        | name   |
+------+--------------+--------+
|    1 | 初一二班     | 十九   |
| NULL | NULL         | 科比   |
+------+--------------+--------+
2 rows in set (0.00 sec)

查询数据:
查询数据表中有哪些数据也可分为两类:查询所有字段和部分字段数据。
1)查看所有数据:

select * from 表名; [ * 通配符,取所有]
#查看学生表全表字段数据

mysql> select * from student;
+------+--------------+------+--------+
| id   | class        | sex  | name   |
+------+--------------+------+--------+
|    1 | 初一二班     | 男   | 十九   |
+------+--------------+------+--------+
1 row in set (0.00 sec)

2)查看指定字段/条件的数据:

Select 字段列表 from 表名 [where 条件];

字段列表决定查询显示结果

# 查看学生表name字段:

mysql> select name from student;
+--------+
| name   |
+--------+
| 十九   |
| 科比   |
+--------+
2 rows in set (0.00 sec)

mysql> select name from student where id = 1;
+--------+
| name   |
+--------+
| 十九   |
+--------+
1 row in set (0.00 sec)

修改(更新)数据:
数据的修改更准确的来说应该是更新数据(只有对数据有影响时才会更改成功 (对数据有改变))

update 表名 set 字段 = 值 [where 条件]

当我们更新数据时,若不加条件将会更新整个字段的数据

#   以学生表id字段为例修改

mysql> select * from student;
+------+--------------+--------+
| id   | class        | name   |
+------+--------------+--------+
|    1 | 初一二班     | 十九   |
| NULL | NULL         | 科比   |
+------+--------------+--------+
2 rows in set (0.00 sec)

#   以学生表id字段为例有条件修改

mysql> update student set id = 3 where id = 1;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> select * from student;
+------+--------------+--------+
| id   | class        | name   |
+------+--------------+--------+
|    3 | 初一二班     | 十九   |
| NULL | NULL         | 科比   |
+------+--------------+--------+
2 rows in set (0.00 sec)

#   以学生表id字段为例无条件修改

mysql> update student set id = 3;
Query OK, 1 row affected (0.00 sec)
Rows matched: 2  Changed: 1  Warnings: 0

mysql> select * from student;
+------+--------------+--------+
| id   | class        | name   |
+------+--------------+--------+
|    3 | 初一二班     | 十九   |
|    3 | NULL         | 科比   |
+------+--------------+--------+
2 rows in set (0.00 sec)

删除数据:
删除数据不可逆( SQL命令不加条件会全部删除)

delete from 表名 [where 条件];
#  有条件对学生表删除

mysql> select * from student;
+------+--------------+-----------+
| id   | class        | name      |
+------+--------------+-----------+
|    3 | 初一二班     | 十九      |
|    3 | NULL         | 科比      |
|    1 | NULL         | 詹姆斯    |
|    4 | NULL         | 罗斯      |
+------+--------------+-----------+
4 rows in set (0.00 sec)

mysql> delete from student where id = 4;
Query OK, 1 row affected (0.00 sec)

mysql> select * from student;
+------+--------------+-----------+
| id   | class        | name      |
+------+--------------+-----------+
|    3 | 初一二班     | 十九      |
|    3 | NULL         | 科比      |
|    1 | NULL         | 詹姆斯    |
+------+--------------+-----------+
3 rows in set (0.00 sec)

# 无条件对学生表数据删除:

mysql> delete from student ;
Query OK, 3 rows affected (0.00 sec)

mysql> select * from student;
Empty set (0.00 sec)

==========手动分隔=--------------
好了,以上就是我对mysql数据库的一些最基本的操作所做的介绍,因为在终端输命令太麻烦了(还是太懒)所以有部分命令没有演示,所以有兴趣的可以自行测试,文中提到的部分概念我会在后期进行解释,文章里加示例有些太乱了,影响观看体验,但是都是最基本的小白操作,如果有错误还请各位前辈多多指教。(可能版本问题会有误差,但最基本的操作语句应该还是okk)