MySQL数据库 - 数据库和表的基本操作(二)
在插入数据时,我们指定了所有的字段名,这样的好处是:即使我们打乱了原本字段的排列顺序,只要插入的数据与之匹配,插入都不会出错。其实,还有一种偷懒的办法,就是我们可以不填字段名,但是这样的话,就必须老老实实的按字段顺序来填入相应的数据。有的时候,我们并不想往某个字段内插入完完整整的值,或者说,有的时候我们并没有完整的数据可以整整齐齐插入某个字段。这时候就需要我们只为指定好的字段插入数据了,其他的我们
第1关:插入数据
任务描述
本关任务:为表同时插入多条我们规定的记录。
相关知识
为了完成本关任务,你需要掌握:如何为表一次性插入多条记录。
为表的所有字段插入数据
向表中插入数据最简单的方法就是使用INSERT
语句。INSERT
语句需要你声明要插入内容的表(table)
名和内容(values)
。
语法规则:INSERT INTO 表名 (字段名) VALUES (内容);
举个例子:
假设我们现在有一张空表MyUser
如下:
接下来,我们要往空表中插入一条内容,插入(INSERT)
语句为:
insert into MyUser(name,age) values('zhnagsan',18);
结果为:
插入过程如下:
我们检索到了一条数据的结果,一条完整的内容已经被填入了空表中。
分析:
在插入数据时,我们指定了所有的字段名,这样的好处是:即使我们打乱了原本字段的排列顺序,只要插入的数据与之匹配,插入都不会出错。其实,还有一种偷懒的办法,就是我们可以不填字段名,但是这样的话,就必须老老实实的按字段顺序来填入相应的数据。
为表的指定字段插入数据
有的时候,我们并不想往某个字段内插入完完整整的值,或者说,有的时候我们并没有完整的数据可以整整齐齐插入某个字段。这时候就需要我们只为指定好的字段插入数据了,其他的我们都不用管。换句话说,就是: 为表的指定字段插入数据,就是在INSERT
中只向部分插入值,而其他字段的值为表定义时的默认值。
举个例子
假设我们现在有一张空表 MyUser
如下:
我们忽略字段 age
,为表 MyUser
插入内容:
insert into MyUser(name) values('lisi'),('fawaikuangtu'),('zhangsan');
结果为:
插入过程如下:
可以看到,由于我们建表时给字段 age
设置的默认值为 Null
,所以插入数据时忽略该字段,就会默认给它赋值为空。
编程要求
根据提示,在右侧编辑器Begin-End
处补充代码:
- 我们为你新建了一个空数据表
tb_emp
,请你为它同时添加3
条数据内容; - 空数据表结构如下,注意
字段3
为DeptId
,倒数第二个字母为大写的i
:
- 需要你同时添加的数据内容为: (注意,是同时插入多条记录)
测试说明
我会对你编写的代码进行测试,最终结果会如下图所示:
开始你的任务吧,祝你成功!
USE Company;
#请在此处添加实现代码
########## Begin ##########
########## bundle insert the value ##########
INSERT INTO tb_emp (Id,Name,DeptId,Salary) VALUES (1,'Nancy',301,2300),(2,'Tod',303,5600),(3,'Carly',301,3200);
########## End ##########
SELECT * FROM tb_emp;
第2关:更新数据
任务描述
有道是:人生在世,孰能无过。过而能改,善莫大焉!
本关就为各位着重介绍数据的更新(UPDATE)
。
本关任务:将数据表中原有的数据修改为本关指定的数据。
相关知识
为了完成本关任务,你需要掌握:如何使用update
来修改已有的数据。
更新表中指定的内容
通过上一关的学习,我们已经掌握了INSERT
操作!同样,UPDATE
操作也很简单,只要记住UPDATE
语句三要素就能轻松掌握,它们分别是:
- 需要更新的
表(table)名
; - 需要更新的
字段(column)名
和它的新内容(value)
; - 决定更新
哪一条内容(value)
的过滤条件
。
语法规则为: UPDATE 表名 SET 字段名1 = 内容1, 字段名2 = 内容2, 字段名3 = 内容3 WHERE 过滤条件; 。
举个例子 我们现在有一张表Mall_products2
,内容如下图所示:
现在我们想把Span
换成Pakistan
,当然,地区代码也要换为92
。
更新(UPDATE)
语句为:
UPDATE Mall_products2SET country_name = "Pakistan", country_id = 92WHERE id = 2;
结果为:
插入过程如下:
看上去不难吧,快来练练手吧!
编程要求
根据提示,在右侧编辑器Begin-End
处补充代码:
- 我们为你新建了一个数据表
tb_emp
,并添加了3
条数据内容; 3
条数据内容如下表所示:
- 请你将
Carly
改为Tracy
,相应的,301
改为302
,3200.00
改为4300.00
。
注意:字段3
为DeptId
,倒数第二个字母为大写的i
。
测试说明
我会对你编写的代码进行测试,最终结果会如下图所示:
开始你的任务吧,祝你成功!
USE Company;
#请在此处添加实现代码
########## Begin ##########
########## update the value ##########
UPDATE tb_emp
SET Name = "Tracy", DeptId = 302 , Salary = 4300
WHERE id = 3;
########## End ##########
SELECT * FROM tb_emp;
第3关:删除数据
任务描述
本关任务:删除表中的指定行。
相关知识
为了完成本关任务,你需要掌握:如何删除指定行的数据。
删除表中的指定行
从数据表中删除数据内容需要使用DELETE
语句,它需要WHERE
语句来配合它来指定我们究竟应该删除哪些数据内容。
语法规则为: DELETE FROM 表名 WHERE 条件语句; 。
我们可以指定删除某一行的数据内容,当然,我们还可以指定删除很多行的数据内容,区别就在于条件语句。那么在接下来的例子里,我们来看看很多行内容是怎么删除的。
举个例子 我们现在有一张表Mall_products2
,内容如下图所示:
现在我们想把包含Span
和Italy
的这两行数据内容同时删除,删除(DELETE)
语句为:
DELETE FROM Mall_products2 WHERE id=2 OR id=3;
结果为:
删除过程如下:
聪明如你,删除多行内容的例子都看懂了,我想删除某一行的数据内容对你们来说简直易如反掌!
删除表中的所有行
删除表中的所有行就更简单了。如果需要删除表中所有的行,只需要省略WHERE
语句即可。
语法规则为: DELETE FROM 表名; 。
举个例子 我们现在有一张表Mall_products2
,内容如下图所示:
现在我们想把表Mall_products2
的所有数据内容同时删除,删除(DELETE)
语句为:
DELETE FROM Mall_products2;
结果为:
删除过程如下:
小提示: TRUNCATE TABLE 语句也可以用来删除表中的所有记录。但是与 DELETE 不同的是,TRUNCATE TABLE 语句直接删除的是表,而不是表中的内容,删除结束后还会重新创建一个表。所以它的执行速度会比 DELETE 语句快。 语法为:TRUNCATE TABLE 表名;
好了,数据的删除就介绍到这里了,是不是跃跃欲试呢?
编程要求
根据提示,在右侧编辑器Begin-End
处补充代码:
-
我们为你新建了一个数据表
tb_emp
,并添加了3
条数据内容; -
3
条数据内容如下表所示:
-
请你将
Salary
大于3000
的数据行删除。
测试说明
我会对你编写的代码进行测试,最终结果会如下图所示:
开始你的任务吧,祝你成功!
USE Company;
#请在此处添加实现代码
########## Begin ##########
########## delete the value ##########
DELETE FROM tb_emp
WHERE Salary > 3000;
########## End ##########
SELECT * FROM tb_emp;
本文仅供学习参考。
更多推荐
所有评论(0)