当前位置: 首页 > news >正文

深入解析:【数据库基础】SQL与关系型数据库原理

深入解析:【数据库基础】SQL与关系型数据库原理

数据库基础

一、数据库核心概念

1.1 数据库定义与组成

  • 数据库:有组织的数据集合,便于存储、管理和检索
  • 数据库系统 = 硬件 + OS + 数据库 + DBMS + 应用软件 + 用户
  • DBMS(数据库管理系统):操作和管理数据库的软件

1.2 数据层级结构

MySQL服务 → 数据库 → 数据表 → 行(记录) + 列(字段)

1.3 数据库在企业中的定位

  • 存储和管理核心数据
  • 应用场景:
    • 社交应用:用户信息、聊天记录
    • 电商平台:订单、支付数据
    • 游戏系统:玩家数据、装备信息

二、数据库类型与发展

2.1 数据库发展历程

  1. 第一代:层次型/网状型数据库(IMS)
  2. 第二代:关系型数据库(MySQL、Oracle)
  3. 第三代:新型数据库(NoSQL、时序数据库)

2.2 关系型数据库

  • 核心特征
    • 基于二维表结构
    • 支持ACID特性
    • 使用SQL语言操作
  • 代表产品:MySQL、Oracle、PostgreSQL、SQL Server
  • 数据模型:E-R模型(实体-关系模型)

2.3 非关系型数据库(NoSQL)

  • 核心特征
    • 灵活的数据结构
    • 高性能读写
    • 高可扩展性
  • 主要类型
    • 键值数据库:Redis
    • 文档数据库:MongoDB
    • 列式数据库:HBase
    • 图数据库:Neo4j

三、关系型 vs 非关系型对比

维度关系型数据库非关系型数据库
数据结构表结构固定结构灵活多样
查询语言SQL标准各自专用API
事务支持完善的ACID有限或最终一致性
扩展性垂直扩展为主水平扩展容易
适用场景复杂查询、事务系统高并发、大数据量
代表产品MySQL、OracleRedis、MongoDB

四、SQL语言分类

4.1 DDL(数据定义语言)

CREATE DATABASE/TABLE    -- 创建
ALTER TABLE             -- 修改
DROP DATABASE/TABLE     -- 删除

4.2 DML(数据操纵语言)

INSERT   -- 插入数据
UPDATE   -- 更新数据
DELETE   -- 删除数据

4.3 DQL(数据查询语言)

SELECT   -- 查询数据

4.4 DCL(数据控制语言)

GRANT    -- 授权
REVOKE   -- 撤销权限
COMMIT   -- 提交事务
ROLLBACK -- 回滚事务

五、数据库核心操作

5.1 数据库操作

-- 创建数据库
CREATE DATABASE 数据库名;
-- 选择数据库
USE 数据库名;
-- 查看所有数据库
SHOW DATABASES;

5.2 数据表操作

-- 创建表
CREATE TABLE students (id INT PRIMARY KEY AUTO_INCREMENT,name VARCHAR(50) NOT NULL,age INT,score DECIMAL(4,2),created_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- 查看表结构
DESC students;
-- 修改表结构
ALTER TABLE students ADD COLUMN email VARCHAR(100);
ALTER TABLE students DROP COLUMN age;

5.3 数据操作

-- 插入数据
INSERT INTO students (name, score) VALUES ('张三', 85.5);
-- 查询数据
SELECT * FROM students WHERE score > 60;
SELECT name, score FROM students ORDER BY score DESC;
-- 更新数据
UPDATE students SET score = 90.0 WHERE name = '张三';
-- 删除数据
DELETE FROM students WHERE score < 60;

5.4 高级查询

-- 条件查询
SELECT * FROM students WHERE score BETWEEN 60 AND 90;
-- 聚合查询
SELECT AVG(score) as avg_score, COUNT(*) as total FROM students;
-- 分组查询
SELECT name, AVG(score) FROM students GROUP BY name HAVING AVG(score) > 80;
-- 多表连接
SELECT s.name, c.course_name
FROM students s
JOIN courses c ON s.course_id = c.id;

六、数据类型详解

6.1 数值类型

6.2 字符串类型

  • 定长:CHAR(长度) - 性能好
  • 变长:VARCHAR(最大长度) - 节省空间
  • 文本:TEXT - 大段文字

6.3 时间类型

七、用户与权限管理

7.1 用户管理

-- 创建用户
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
-- 删除用户
DROP USER 'username'@'host';
-- 修改密码
SET PASSWORD FOR 'username'@'host' = PASSWORD('new_password');

7.2 权限管理

-- 授权
GRANT SELECT, INSERT ON database.table TO 'user'@'host';
-- 撤销权限
REVOKE INSERT ON database.table FROM 'user'@'host';
-- 查看权限
SHOW GRANTS FOR 'user'@'host';

7.3 权限分类

权限说明权限说明
SELECT查询INSERT插入
UPDATE更新DELETE删除
CREATE创建DROP删除
ALTER修改INDEX索引
ALL所有权限
http://www.gsyq.cn/news/79353.html

相关文章:

  • 2025年3D砂型打印行业权威品牌综合实力榜 全球粘结剂喷射技术市场深度解析与领先品牌评估
  • 2025年五大海鲜礼盒正规厂家排行榜,新测评精选海鲜礼盒厂家
  • 2025 连云港市买商标必看测评:合规平台 TOP3,效率与安全性双保障
  • 2025年12月厨余处理器综合实力榜:十大热门品牌测评,中餐家庭的优质之选
  • 安阳装修公司推荐 TOP5:27 年整装标杆领衔,品质家装精准适配
  • 【GitHub每日速递 20251209】Next.js融合AI,让draw.io图表创建、修改、可视化全靠自然语言!
  • 北京合同纠纷律师权威测评排行榜:3 大微信小程序碾压传统律所,靠谱推荐看这篇!
  • 2025年郑州宠物美容培训学校哪家口碑好排行榜
  • 2025年数控龙门铣床制造厂精选榜单:双侧铣/数控双侧铣床/龙门铣实力厂家推荐
  • 苏州工伤纠纷哪家律所靠谱?专业法律服务机构推荐
  • 2025年中央空调品牌排名推荐,看看哪个品牌性价比高值得选?
  • stress-ng安装测试
  • 降ai率免费工具:提升原创度的实用选择与推荐
  • 2025年钢轨探伤设备定制厂家权威推荐榜单:钢材探伤仪‌/钢锭探伤仪‌/钢轨探伤仪源头厂家精选
  • 散修带你入门鸿蒙应用开发基础第三节:流程控制 - 鸿蒙
  • 2025年上海知名的衣柜全屋定制品牌厂家推荐:全屋定制公司哪
  • 必看!2025年简约智能家居照明灯厂家TOP榜单推荐
  • 2025年12月减持节税服务机构推荐:行业标杆机构评测与优选方案
  • 2025年中国十大耐磨斗齿供应商推荐:口碑好的耐磨斗齿厂家
  • 2025年五大优质发酵缸大型厂家排行榜,新测评精选发酵缸定制
  • 2025年十大专为老人设计楼梯升降椅品牌排行榜,看哪家价格合
  • 2025 年质量好的陕西单晶炉厂家推荐及采购指南
  • 甘肃全屋定制五大推荐:欧比亚全屋定制公司领衔本地品质之选
  • 2025年苏州靠谱的中秋月饼礼盒推荐:传统口味与老年月饼优选
  • istio通过Gateway和VirtualService代理tcp端口
  • 2025年12月麦冬苗批发基地推荐:规模化种植基地口碑排名与选购指南
  • 使用Python学习AI知识中踩过的坑
  • 2025年知名的学校保安公司实力口碑榜
  • 2025年12月四川除甲醛服务权威推荐榜:专业检测治理,室内新车家具甲醛祛除,高效净化与安心保障口碑之选
  • 2025年艺术漆五大品牌排名,意大利进口艺术涂料品牌推荐与选