数据库基础

目录

数据库理论

数据库介绍

定义:

类型:

功能:

数据库操作

数据表操作

创建数据表

查询数据表

修改数据表

删除数据表

单表操作

增加数据

修改数据

删除数据

查询数据

基本查询

条件查询

排序

分页

多表查询

交叉连接

内连接

左外连接

右外连接

子查询

外键约束

事务

补充

常见报错:


数据库理论

数据库介绍

数据库是一种用于组织、存储和管理数据的电子系统。它可以被看作是一组相互关联的数据集合,这些数据可以被高效地访问、管理和更新。以下是关于数据库的一些基本介绍:

定义:

数据库是一个长期存储在计算机硬件平台上的、有组织的、可共享的数据集合。
它旨在最小化数据冗余,并确保数据的一致性和准确性。

类型:

关系型数据库 (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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

啵啵薯条

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值