Java教程

数据库和它的增删改查

本文主要是介绍数据库和它的增删改查,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

什么是数据库

  1. 数据库(database)是用来组织、存储和管理数据的仓库

  2. 为了方便管理互联网世界中的数据,就有了数据库。用户可以对数据库中的数据进行增删改查等操作

数据库分类

  • 传统类型数据库(关系类型数据库或者SQL数据库) 比如:MySQL、Oracle、SQL Server,这三者的设计理念相同,用法比较类似

  • 新型数据库(非关系数据库或NoSQL数据库) 比如:Mongodb,它在一定程度上弥补了传统型数据库的缺陷

传统型数据库的数据组织结构

我们这里主要讲解传统类型数据库,以下都是一些概念性的东西

1.在传统的类型的数据库中,数据的组织结构分为数据库(database)、数据表(table)、数据行(row)、字段(field) 这 4 大部分组成.

 

  • 数据库类似于 Excel 的工作簿

  • 数据表类似于 Excel 的工作表

  • 数据行类似于 Excel 的每一行数据

  • 字段类似于 Excel 的

  • 每个字段都有对应的数据类型

实际开发中库、表、行、字段的关系

  1. 在实际项目开发中,一般情况下,每个项目都对应独立的数据库

  2. 不同的数据,要存储到数据库的不同表中,例如:用户数据存储到 users 表中,图书数据存储到 books 表中

  3. 每个表中具体存储哪些信息,由字段来决定,例如:我们可以为 users 表设计 id、username、password 这 3 个字段

  4. 表中的行,代表每一条具体的数据 

SQL 语句

SQL是 结构化查询语言,专门用来访问和处理数据库的编程语言。能够让我们以编程的形式,操作数据库里面的数据

三个关键点:

  • SQL 是一门数据库编程语言

  • 使用 SQL 语言编写出来的代码,叫做 SQL 语句

  • SQL 语言只能在关系型数据库中使用(例如 MySQLOracleSQL Server)。非关系型数据库(例如 Mongodb)不支持 SQL 语言

SQL 能做什么

  1. 从数据库中查询数据

  2. 向数据库中插入新的数据

  3. 更新数据库中的数据

  4. 从数据库删除数据

  5. 可以创建新数据库

  6. 可在数据库中创建新表

  7. 可在数据库中创建存储过程、视图

SQL基本语法(增删改查...)

首先SQL语句对大小写不敏感.返回的数据集合叫做结果集

SELECT语句,查询所有列

-- 通过 * 把 jager 表中的所有的数据查询出来 (* 这个符号代表所有列)
SELECT * FROM jager
--从指定的表中,查询指定的列的数据
SELECT username FROM jager
-- 获取名为username和password的列的内容 多列之间,使用英文逗号进行分隔
select username, password from users

 

 

 

 

 

 

INSERT INTO 语句

-- 往指定的表中,增加新的数据,值要使用英文引号包裹,多个列之间使用逗号分隔
-- 方法1:
INSERT INTO 表名 SET 列名1="值1",列名2="值2"
-- 方法2: 这种方法要注意列和值之间要一一对应
INSERT INTO jager (列名1,列名2) VALUES ("值1","值2")

 

UPDATE语句

--用于修改表中的数据 set后面跟的是要修改的结果,where语句后面跟的是修改的条件
UPDATE 表名 set 列名="值" WHERE 列名=值
-- 示例:UPDATE jager set username="lux" WHERE id=27 
--翻译过来就是把id为27的那一列里面的username改为lux

 

 

信息栏提示如下信息就表示操作成功了.

注意:

  • 多个更新的列之间使用英文逗号隔开

  • where 后面跟的是限制条件,不提供的话,会更新整个表的数据,长点心!!!

DELETE语句

-- 根据where条件删除指定的数据 值为字符串时加引号包裹
DELETE FROM 表名 WHERE 列名=值 

 

 

信息栏提示如下信息就表示操作成功了.

注意

  • 跟UPDATE语句一样,where语句后面不写条件会删除整个表里面的数据!!!!千万注意

WHERE 子句

WHERE子句可用于以上三种语句中来限定条件,在WHERE语句中可以使用运算符,下面列举了一些常用的运算符的用法:

 示例:

-- 查询id大于20的用户
SELECT * FROM jager WHERE id>20
--LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。
--查询id以2开头的用户 %用于定义通配符,匹配缺少的字符
SELECT * FROM jager WHERE id LIKE '2%'
--查询id以2结尾的用户
SELECT * FROM jager WHERE id LIKE '$1'

总结(增删改查)

 

SQL中的AND和OR运算符

  • AND和OR可以把WHERE子语句中的多个条件合起来

  • AND类似于&&运算符(逻辑与),需要同时满足所有的条件

  • OR类似于 || 运算符(逻辑或),多个条件满足一个即可

示例:

-- 查询id大于15且小于24的所有用户
SELECT * FROM jager WHERE id>15 AND id<24
-- 查询id大于15且status等于1的所有用户
SELECT * FROM jager WHERE id>15 OR status=1

SQL中的ORDER BY子句

  • ORDER BY子句可以根据指定的列的搜索结果进行升序或者降序排列

  • ASC 表示升序 DESC 表示降序

  • 当不指定字段时,默认按照升序排列

示例:

-- 语法
SELECT * FROM 表名 ORDER BY 列名 ASC(DESC)
-- 可以把通过where子句指定条件的数据按序排序,如下
-- 查询id大于15且status等于1的所有用户 并且把结果集按照username字段进行升序排列
SELECT * FROM jager WHERE id>15 OR status=1 ORDER BY username ASC

 

ORDER BY子句进行多重排序

对表中的数据,先按照password字段进行降序排序,再按照 username的字母顺序,进行升序排序

SELECT * FROM jager ORDER BY password DESC , username ASC

SQL 的 COUNT(*) 函数

COUNT(*) 函数返回在给定的选择中被选的行数

SELECT COUNT(*) FROM 表名
-- 示例 如下图
SELECT COUNT(*) FROM jager 
--本例返回"jager"表中的行数:

 

 

-- 示例 返回id大于20的用户
SELECT COUNT(*) FROM jager WHERE id>20

 

 使用AS为count(*)查询出来的列设置名称

SELECT COUNT(*) AS 要设置的名称 FROM 表名 WHERE 条件
-- 示例:
-- 查询id小于20的用户,并把返回的列名称改为elk
SELECT COUNT(*) AS elk FROM jager WHERE id>20

 

这篇关于数据库和它的增删改查的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!