目录
数据库理论
数据库介绍
数据库是一种用于组织、存储和管理数据的电子系统。它可以被看作是一组相互关联的数据集合,这些数据可以被高效地访问、管理和更新。以下是关于数据库的一些基本介绍:
定义:
数据库是一个长期存储在计算机硬件平台上的、有组织的、可共享的数据集合。
它旨在最小化数据冗余,并确保数据的一致性和准确性。
类型:
关系型数据库 (RDBMS)
特点:
使用表格形式存储数据。
表格之间通过外键关联。
支持ACID(原子性、一致性、隔离性、持久性)事务。
使用SQL(Structured Query Language)作为标准查询语言。
示例:
MySQL:开源的关系型数据库管理系统,广泛用于Web应用。
Microsoft SQL Server:微软提供的企业级数据库服务器。
Oracle Database:功能强大的企业级数据库管理系统。
PostgreSQL:功能丰富且高度可扩展的开源数据库。
SQLite:轻量级的文件系统数据库,常用于嵌入式系统和移动应用。
IBM DB2:支持多种操作系统的企业级数据库。
Sybase ASE:高性能的关系型数据库管理系统。
非关系型数据库 (NoSQL)
特点:
不使用固定的表格模式,提供灵活的数据模型。
更易于横向扩展。
通常不支持完整的ACID特性。
类型:
文档型数据库:以文档形式存储数据,每个文档可以有不同的字段。
MongoDB
Couchbase
键值型数据库:数据以键值对的形式存储。
Redis
Memcached
Amazon DynamoDB
列族数据库:以列族的形式存储数据,适合大数据和高并发场景。
Apache Cassandra
HBase
图形数据库:以图形结构存储数据,适合处理复杂的关系数据。
Neo4j
ArangoDB
搜索引擎:具有全文搜索和分析功能。
Elasticsearch
Apache Solr
时间序列数据库:专门用于存储时间序列数据,适用于监控和物联网应用。
InfluxDB
OpenTSDB
其他数据库类型
对象数据库:存储面向对象程序设计中的对象。
XML 数据库:专门用于存储 XML 格式的数据。
NewSQL:结合了NoSQL的可扩展性和SQL的事务处理能力。
功能:
数据存储: 保存数据。
数据检索: 快速查找所需数据。
数据更新: 修改已存在的数据。
数据安全性: 保护数据免受未授权访问。
并发控制: 管理多个用户同时访问数据的情况。
事务处理: 确保数据操作的完整性和一致性。
数据库操作
-- 创建数据库
create database [IF NOT EXISTS] 数据库名; create database db1;
-- 查询数据库
show databases;
-- 删除数据库
drop database [IF EXISTS] 数据库名; drop database db1;
-- 查看正在使用的数据库
select database();
-- 切换数据库
use 数据库名; use db1;
数据表操作
创建数据表
基本语法
-- 语法 create table 表名( 字段名1 字段类型1(字段长度) [ comment 字段1注释 ], -- 不是;号 字段名2 字段类型2(字段长度) [ comment 字段2注释 ], .... 字段名n 字段类型n(字段长度) [ comment 字段n注释 ]-- 最后一列后面是没有,的 ) [ comment 表注释 ];
数据类型:MySQL中主要有三大类数据类型: 分别是数值、字符、日期
大分类 类型 描述 数值类型 tinyint 小整数 int <