写入/查询/更新记录
视频锁定
{$ currentTime | date:'mm:ss' $}
{$ timeLeft | date:'mm:ss' $}
-- 在"class101"中写入一条数据,对于字符串我们需要在前后添加单引号'
,INT
类型和FLOAT
类型的字段则不需要添加单引号'
。
mysql> INSERT INTO class101 VALUES (11, 'Tom', 4.8);
Query OK, 1 row affected (0.03 sec)
-- 再写入一条数据
mysql> INSERT INTO class101 VALUES (22, 'Mohamed Ali', 4.9);
Query OK, 1 row affected (0.03 sec)
-- 查询表"class101"中的所有列值
mysql> SELECT * FROM class101;
+----+-------------+------+
| id | name | gpa |
+----+-------------+------+
| 11 | Tom | 4.8 |
| 22 | Mohamed Ali | 4.9 |
+----+-------------+------+
2 rows in set (0.00 sec)
-- 查询表"class101"中的特定列并指定查询条件
mysql> SELECT name, gpa FROM class101 WHERE gpa > 4.85;
+-------------+------+
| name | gpa |
+-------------+------+
| Mohamed Ali | 4.9 |
+-------------+------+
1 rows in set (0.00 sec)
-- 更新指定记录
mysql> UPDATE class101 SET gpa = 4.4 WHERE name = 'Tom';
Query OK, 1 row affected (0.03 sec)
mysql> SELECT * FROM class101;
+----+-------------+------+
| id | name | gpa |
+----+-------------+------+
| 11 | Tom | 4.4 |
| 22 | Mohamed Ali | 4.9 |
+----+-------------+------+
2 rows in set (0.00 sec)
-- 删除指定记录
mysql> DELETE FROM class101 WHERE id = 22;
Query OK, 1 row affected (0.03 sec)
mysql> SELECT * FROM class101;
+----+-------------+------+
| id | name | gpa |
+----+-------------+------+
| 11 | Tom | 4.4 |
+----+-------------+------+
1 rows in set (0.00 sec)
-- 你可以将需要执行的SQL命令单独存储量在一个文件里,我们把这个文件称作"脚本文件"。
-- 例如:我们使用编辑器创建一个名为"mycommands.sql"的文件,并将以下命令复制到该文件中,完成后我们将该文件保存至"d:\Courses\MySQL\tools"。
INSERT INTO class101 VALUES (33, 'Jack', 4.8);
INSERT INTO class101 VALUES (44, 'Kevin', 4.6);
SELECT * FROM class101;
-- 接下来我们在MySQL命令行运行”source”命令执行SQL脚本,此处需提供SQL脚本的完整文件名。(该文件的完整路径为"d:\Courses\MySQL\tools\mycommands.sql")
mysql> source d:\Courses\MySQL\tools\mycommands.sql
Query OK, 1 row affected (0.00 sec) -- INSERT command output
Query OK, 1 row affected (0.00 sec) -- INSERT command output
+------+-------------+------+
| id | name | gpa |
+------+-------------+------+
| 11 | Tom | 4.4 |
| 33 | Jack | 4.8 |
| 44 | Kevin | 4.6 |
+------+-------------+------+
3 rows in set (0.00 sec) -- SELECT command output
课后练习
- 查询名字以'K'开头的记录 (提示: name like 'K%')
- 查询名字不是以'K'开头的记录 (提示: name NOT like ...)
- 查询平均分介于4.35至4.65之间的记录 (提示: gpa >= 4.3 AND ...)
- 查询名字包含'e'的记录 (提示: name like '%e%')
- 查询名字包含'e'或'a'的记录 (提示: ... OR ...)
- 查询名字不包含'e'或'a'的记录 (提示: NOT (... OR ...))
- 查询名字包含'e'且平均分 ≥ 4.5.
在线练习
{$ activeFileHint $}