分布式数据库基础与应用
上QQ阅读APP看书,第一时间看更新

1.2.5 数据的基本操作

1.插入数据

MySQL数据表使用INSERT INTO SQL语句来插入数据。

语法:NSERT INTO table_name(field1,field2,…,fieldN) VALUES(value1,value2,…,valueN)。

如果数据是字符型,则必须使用单引号或者双引号,如"value"。

实例如下。

# 向 test_tbl 数据表插入两条数据
mysql> INSERT INTO test_tbl
    ->      (test_code, test_name, test_date)
    ->      VALUES
    ->      ("MySQL数据库1", "test001", NOW());
Query OK, 1 row affected, 1 warning (0.01 sec)
mysql> INSERT INTO test_tbl
    ->      (test_code, test_name, test_date)
    ->      VALUES
    ->      ("MySQL数据库2", "test002", NOW());
Query OK, 1 row affected, 1 warning (0.00 sec)

2.查询数据

MySQL数据表使用SELECT命令来查询数据。

语法:SELECT column_name, column_name FROM table_name [WHERE clause] [LIMIT N] [OFFSET M]。

实例如下。

# 返回数据表test_tbl的所有记录
mysql> SELECT * FROM test_tbl;
+---------+-----------------+-----------+------------+
| test_id | test_code       | test_name | test_date  |
+---------+-----------------+-----------+------------+
|       1 | MySQL数据库1    | test001   | 2023-08-14 |
|       2 | MySQL数据库2    | test002   | 2023-08-14 |
+---------+-----------------+-----------+------------+
2 rows in set (0.00 sec)

实例解析如下。

● 使用多个数据表时,表之间使用逗号(,)进行分隔。

● SELECT命令可以读取一条或者多条记录。

● 使用星号(*)来代替其他字段时,SELECT 命令会返回 MySQL 数据表的所有字段数据。

● 使用WHERE语句来设置查询条件。

● 使用LIMIT命令来设置返回的记录数。

● 使用OFFSET命令来指定SELECT命令开始查询的数据偏移量,默认情况下的偏移量为0。

3.更新数据

MySQL数据表的数据可以使用UPDATE命令进行修改或更新。

语法:UPDATE table_name SET field1 = new-value1, field2 = new-value2 [WHERE clause]。

实例如下。

# 更新数据表中test_id 为 1 的 test_name 字段值为test001_update
mysql> UPDATE test_tbl SET test_name = 'test001_update' WHERE test_id = 1;
Query OK, 1 row affected (0.02 sec)
Rows matched: 1  Changed: 1  Warnings: 0
mysql> SELECT * FROM test_tbl;
+---------+-----------------+----------------+------------+
| test_id | test_code       | test_name      | test_date  |
+---------+-----------------+----------------+------------+
|       1 | MySQL数据库1    | test001_update | 2023-08-14 |
|       2 | MySQL数据库2    | test002        | 2023-08-14 |
+---------+-----------------+----------------+------------+
2 rows in set (0.00 sec)

4.删除数据

MySQL数据表的数据可以使用DELETE命令进行删除。删除数据时必须十分谨慎,因为执行删除命令后数据会被清空。

语法:DELETE FROM table_name [WHERE clause]。若没有指定WHERE子句, MySQL数据表中的所有记录将被删除。WHERE子句中可以指定任何条件。

实例如下。

# 删除 test_tbl 数据表中 test_id 为2 的记录
mysql> DELETE FROM  test_tbl WHERE test_id  = 2;
Query OK, 1 row affected (0.00 sec)
mysql> SELECT * FROM test_tbl;
+---------+-----------------+----------------+------------+
| test_id | test_code       | test_name      | test_date  |
+---------+-----------------+----------------+------------+
|       1 | MySQL数据库1    | test001_update | 2023-08-14 |
+---------+-----------------+----------------+------------+
1 row in set (0.01 sec)