想要操作数据库中的数据,必须通过MySQL提供的数据库操作语言来实现。
MySQL使用 INSERT 语句向数据表中添加数据,并且根据添加方式的不同分为三种,分别是为表的所有字段添加数据、为表的指定字段添加数据、同时添加多条记录。
1.1为表中所有字段添加数据
(1)INSERT 语句中指定所有字段名
向表中添加新纪录时,可以在INSETR 语句中列出表的所有字段名,其语法格式如下:
INSERT INTO 表名(字段名1,字段名2,……)
VALUES (值1,值2,……);
“字段名1,字段名2,……”表示数据表中的字段名称,此处必须列出表中所有字段的名称。
"值1,值2,……"表示每个字段的值,每个值的顺序,类型必须与对应的字段相匹配。
需要注意的是,使用INSERT语句添加记录时,表名后的字段顺序可以与其在表中定义的顺序不一致,它们只需要与VALUES中值的顺序一致即可。
(2)INSERT 语句中不指定字段名
在MySQL中,可以通过不指定字段名的方式添加记录,基本语法格式如下:INSERT INTO 表名 VALUES(值1,值2,……);
需要注意的是,由于语句中咩有指定字段名,添加的值的顺序必须按照字段在表中定义的顺序。
1.2为表的指定字段添加数据
为表的指定字段添加数据就是在INSERT语句中只向部分字段中添加值,而其它字段的值为表定义时的默认值。
基本语法格式如下:
INSERT INTO 表名 (字段名1,字段名2,……) VALUES (值1,值2,……);
“字段名1,字段名2,……”表示表中字段名称,此次只指定表中部分字段的名称。
"值1,值2,……"表示指定字段的值,每个值的顺序、类型必须与对应的字段相匹配。
为指定字段添加数据时,指定字段也无需与其在表中定义的顺序一致,只要与VALUES中值的顺序一致即可。
INSERT INTO 表名 SET 字段名1=值1,字段名2=值2,……;
1.3同时添加多条记录
在MySQL中提供了使用一条INSERT语句同时添加多条记录的功能,其语法格式如下:INSERT INTO 表名 (字段名1,字段名2,……) VALUES (值1,值2,……),(值1,值2,……),(值1,值2,……),……(值1,值2,……);
在上述格式中‘字段名1,字段名2,……’是可选的,用于指定插入的字段名。
和添加单条记录一样,如果不指定字段名,必须为每个字段添加数据,如果指定了某个字段,只需要为指定的字段添加数据。
MySQL中使用UPDATE更新数据,基本语法格式如下:`UPDATE 表名 SET 字段名1=值1,字段名2=值2,…… WHERE 条件表达式;
2.1UPDATE更新部分数据
更新部分数据是指根据指定条件更新表中的某一条或者某几条数据,需要使用WHERE语句来指定更新记录的条件。
如果表中有多条记录满足WHERE句中的条件表达式,则满足条件的记录都会发生更新。
2.2UPDATE更新全部数据
在UPDATAE语句中如果没有使用WHERE子句,则会将表中所有记录的指定字段都进行更新。
删除数据是指对表中存在的记录进行删除,MySQL中使用DELETE语句来删除表中的记录,语法格式如下:DELETE FROM 表名 [WHERE 条件表达式];
'[WHERE 条件表达式];'为可选参数,用于指定删除的条件,满足条件的记录都会被删除。
3.1 DELETE删除部分数据
删除部分数据是指根据指定条件删除表中的某一条或者某几条记录,需要使用WHERE子句来指定删除记录的条件。
3.2 DELETE删除全部数据
在DELETE语句中如果没有使用WHERE子句,则会将表中的所有记录都删除。
在MySQL中还有一种方式可以用来删除表中的所有记录,这种方式需要用到关键字TRUNCATE,语法格式如下:TRUNCATE TABLE 表名;
TRUNCATE和DELETE语句都可以实现删除表中所有数据的功能,但是两者有一定的区别。
(1)DELETE语句是DML语句,TRUNCATE语句通常被认为是DDL语句。
(2)DELELTE语句后面可以跟WHERE子句,通过指定WHERE子句中的条件表达式只删除满足条件的部分记录,而TRUNCATE语句只能用于删除表中的所有记录。
(3)使用TRUNCATE语句删除表中的数据后,再次向表中添加记录时,自动增加的默认初始值重新由1开始,而使用DELETE语句删除表中的所有记录后,再次向表中添加数据时,自动增加字段的值为删除时该字段的最大值加1。
(4)使用DELETE语句时,每删除一条记录都会在日志中记录,而使用TRUNCATE语句时不会在日志中记录删除的内容,因此使用TRUNCATE语句的执行效率比DELETE语句要高。
可以使用SELETE *F ROM 表名;
查看表中的内容。