数据的基本操作
任务六:添加、更新与删除数据
增删改查
6.1添加数据
6.1.1为表中所有字段添加数据
(1) INSERT语句中指定所有字段名,其语法格式如下所示:
INSERT INTO 表名(字段名1,字段名2,……) VALUES (值1,值2,……);
注:字段名1,字段名2,……”表示数据表中的字段名称,必须列出表所有字段的名称;“值1,值2,……”表示每个字段的值,每个值的顺序、类型必须与对应的字段相匹配。
注:添加的值若是字符类型,需要 加 " " 或 ' ' ,如 : "爱爱小爷"。
(2) INSERT语句中不指定字段名,其语法格式如下所示:
INSERT INTO 表名 VALUES(值1,值2,……);
注:由于INSERT语句中没有指定字段名,添加的值的顺序必须和字段在表中定义的顺序相同。
6.1.2为表的指定字段添加数据
只向部分字段中添加值,而其他字段的值为表定义时的默认值。为表的指定字段添加数据的基本语法格式如下所示:
INSERT INTO 表名(字段1,字段2,…) VALUES (值1,值2,…);
注:某个字段在定义时添加了非空约束,但没有添加default约束,那么插入新记录时就必须为该字段赋值。
多学一招:INSERT语句还有一种语法格式,可以为表中指定的字段或者全部字段添加数据,其格式如下所示:
INSERT INTO 表名 SET 字段名1=值1[,字段名2=值2,……];
6.1.3 同时添加多条记录
在MySQL中提供了使用一条INSERT语句同时添加多条记录的功能,其语法格式如下所示:
INAERT INTO 表名 [ (字段名1,字段名2, … … ) ]
VALUES ( 值1, 值2, … … ) , ( 值1, 值2, … … ) ,
… …
( 值1, 值2, … … );
注:“(值1,值2,……)”表示要插入的记录,该记录可以有多条,并且每条记录之间用逗号隔开。
6.2查看数据
注:使用SELECT语句查看表中的数据,其语法格式如下所示:
SELECT * FROM 表名;
6.3更新数据
MySQL中使用UPDATE语句来更新表中的记录,其基本的语法格式如下所示:
UPDATE 表名 SET 字段名1 = 值1[,字段名2 = 值2,……] [WHERE 条件表达式];
注:“WHERE条件表达式”是可选的,用于指定更新数据需要满足的条件。
(1) UPDATE更新部分数据
更新部分数据是指根据指定条件更新表中的某一条或者某几条记录,需要使用WHERE子句来指定更新记录的条件。
(2) UPDATE更新全部数据
在UPDATE语句中如果没有使用WHERE子句,则会将表中所有记录的指定字段都进行更新。
6.4删除数据
MySQL中使用DELETE语句来删除表中的记录,其语法格式如下所示:
DELETE FROM 表名 [WHERE 条件表达式];
注:“表名”指定要执行删除操作的表,WHERE子句为可选参数,用于指定删除的条件,满足条件的记录会被删除。
(1) DELETE删除部分数据
删除部分数据是指根据指定条件删除表中的某一条或者某几条记录,需要使用WHERE子句来指定删除记录的条件。
(2) DELETE删除全部数据
在DELETE语句中如果没有使用WHERE子句,则会将表中的所有记录都删除。
多学一招:使用关键字TRUNCATE删除表中数据
还有一种方式可以用来删除表中所有的记录,这种方式需要用到一个关键字TRUNCATE,其语法格式如下:
TRUNCATE 表名 ;
注:DELETE语句是DML语句,TRUNCATE语句通常被认为是DDL语句。使用DELETE语句时,每删除一条记录都会在日志中记录,而使用TRUNCATE语句时,不会在日志中记录删除的内容,因此TRUNCATE语句的执行效率比DELETE语句高。