目录
数据库技术和系统已经成为信息基础设施的核心技术和重要基础,数据库技术作为数据管理的最有效的手段,极大地促进了计算机应用的发展。数据库技术主要是用来解决数据处理的非数值计算问题,数据处理的主要内容是数据的存储、查询、修改、排序和统计等。
分类
关系型数据库:
采用关系模型来组织数据,以行和列的形式存储,数据表之间可以建立关系。它提供了数据完整性、事务支持以及丰富的数据操纵和查询语言。关系型数据库适合处理结构化数据,如金融、电商等领域的业务数据。
存储方式: 有自己的结构,存储方式以表和二维表来存储;
常用数据库:MySQL、Oracle
非关系型数据库:
用于存储和管理非结构化数据,采用键值存储、文档存储等不同的数据模型和查询语言。非关系型数据库具有更好的灵活性、可扩展性和高性能,适用于大规模数据存储、实时数据流处理以及多语言和跨平台应用程序等场景。
存储方式:以特殊的文档结构进行存储。redis(以键值对的方式进行存储);mongodb(以json格式进行数据 存储
常用数据库:MongoDB、Redis
MySql
DDL
data definition language 数据库定义语言。用来描述和操作数据库存储的实体语言。
对数据库和表进行操作:
1.CREATE:
用于创建数据库中的新表、视图、索引、同义词、存储过程等对象
CREATE TABLE table_name(
column1 datatype,
column2 datatype,
...
);
2.ALTER
用于修改数据库中已存在的数据库对象,比如添加、删除或修改表中的列和索引。
ALTER TABLE table_name ADD column_name datatype;
3.DROP
用于删除数据库中的对象,比如删除表、视图、索引等
DROP TABLE table_name;
DML
data manipulation language 数据库管理语言。用来操作表中数据的语言。
进行增删改查等操作:
1.INSERT
向表中插入新的数据行。
INSERT INTO table_name (column1,column2,...)
VALUES(value1,value2,...);
2.DELETE
从表中删除数据。
DELETE FROM table_name
WHERE condition;
condition 为此条执行语句依据的条件
3.UPDATE
从表中修改数据。
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
4.SELECT
从表中查询数据。
-- 查询具体的列
SELECT column1,column2,...
FROM table_name;
--查询所有列
SELECT *
FROM table_name;
WHERE
WHERE子句是用于指定查询或数据操作(如更新、删除)的条件。它允许你从数据库表中选取满足特定条件的记录,或者对满足条件的记录进行更新或删除操作。
通常与 SELECT、UPDATE、DELETE 组合使用
SELECT
SELECT column1, column2,...
FROM table_name
WHERE condition;
代码解释:从table_name表中查询满足condition条件的column1、column2、... 列中的内容
UPDATE
UPDATE table_name
SET column1 = value1, column2 = value2
WHERE condition;
代码解释:将table_name表中修改满足条件为condition的column1列中的数据为value1,column2列中的数据为value2
DELETE
DELETE FROM table_name
WHERE condition;
代码解释:将table_name表中满足condition条件的行删除
常用数据类型
数据类型 | 说明 | 长度 |
---|---|---|
smallint | 小整型 | 2字节 |
int | 整型 | 4字节 |
bigint | 大整型 | 8字节 |
float | 单精度浮点数 | 4字节 |
double | 双精度浮点数 | 8字节 |
varchar | 字符串 | 0~65535 |
char | 字符串 | 0~255 |
date | 日期(yyyy-mm-dd) | 3字节 |
char与varchar的区别:
存储方式:
- char:定长,无论存储多少内容,都会分配固定的存储空间。存储的字符长度小于指定的长度,剩余的空间会用空格填充
- varchar:变长,根据实际存储的字符数来动态分配存储空间,并只存储实际长度的数据
使用场景:
- char:多用于固定长度,长度较长的字符数据,例如电话号等
- varchar:多用于长度可变,长度较短的字符数据,例如姓名等