更新时间:2022-01-19 来源:黑马程序员 浏览量:
数据管理是指对数据进行添加、查询、修改以及删除等操作,这些操作在项目开发中是必不可少的操作过程。下面从添加数据、查询数据、修改数据、删除数据几个方面对数据管理的基本知识做具体讲解。
为数据表添加数据时,可以根据实际需求确定是指定字段插入还是省略字段插入。例如,有一个名称为student的学生姓名和性别的信息统计表,如果想要在这个数据表添加数据,可以使用以下两种方式添加数据。
1)指定字段插入
INSERT INTO 'student' VALUES ('name','gender') ('Tom','男'),('Lucy','女'),('Jimmy','男'),('Amy','女');
2)省略字段插入
INSERT INTO 'student' VALUES (NULL,'Elma','女'),(NULL,'Ruth','女');
在上面两种添加数据的方式中,当省略字段列表执行插入操作时,则必须严格按照数据表定义字段时的顺序,在值列表中为字段指定相应的数据。若字段设置为自动增长,添加数据时可以使用NULL进行占位。
在对数据进行查询时,不仅可以查询所有数据,还可以指定字段或按照特定条件进行查询。下面演示几种常用的查询示例。
SELECT * FROM 'student'; #查询表中所有数据 SELECT ' name' EROM 'student'; #查询表中指定宇段 SELECT * EROM 'student' WHERE 'id'=2; #查询id等于2的学生信息 SELECT · FROM 'student'WHERE 'id' IN(4,5); #查询d为4成5的学生信息 SELECT*EROM'student'WHERE NAME LIKE'y'; #查询名字以y结尾的学生信息 SELECT·FROM'student'ORDER BY 'name'ASC; #将查询结果按照名字升序排序 SELECT · FROM 'student' LIMIT 1,2; #查询结果从第2个开始,至多有2个 SELECT'gender ',COUNT(*) FROM 'student' GROUP BY 'gender'; #按性别查询男女各有多少人
在上述语句中,FROM用于指定待查询的数据表,WHERE用于指定查询条件,IN关键字用于判断某个字段的值是否在指定集合中;LIKE用于模糊查询,“%”表示一个或多个字符;ORDER
BY用于将查询结果按照指定字段进行排序,ASC表示升序,DESC表示降序,降序,LIMIT用于限定查询结果,GROUP
BY用于按照指定字段进行分组查询。
修改数据是数据库中常见的操作。例如,将学生信息表中学号为6的学生改名为Tess,具体代码如下:
UPDATE'student'SET'name'='Tess' WHERE' id'=6; #有条件修改 UPDATE 'student ' SET'name'='Tess'; #无条件修改
需要注意的是,在执行UPDATE语句时,若没有使用WHERE语句限定,数据表会更新表中所有记录的指定字段,因此在实际开发中请谨慎使用。
在数据库中,若有些数据已经失去意义或者错误时,就需要将它们删除。常用的几种方式如下:
DELETE FROM 'student ' WHERE 'gender'='女'; #删除部分数掘 DELETE FROM 'student '; #删除全部数据 TRUNCATE 'student'; #清空数据表
在上述SQL语句中,DELETE和TRUNCATE的区别是:前者可以加上WHERE子句,只删除满足条件的部分记录,再次向表中添加记录时,不影响自动增长值;而后者只能用于清空表中的所有记录,且再次向表中添加记录时,自动增加字段的默认初始值将重新由1开始。