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

第1章:数据库基础

第1章:数据库基础

1.1 数据库概述

1.1.1 什么是数据库

  • 数据库的定义
  • 数据库的发展历程
  • 数据库的重要性

1.1.2 关系型数据库简介

  • 关系型数据库模型
  • 常见的关系型数据库
  • 关系型数据库的特点

1.1.3 MySQL在企业中的应用

  • Web应用
  • 电商平台
  • 金融系统
  • 大数据存储

1.2 数据库基本概念

1.2.1 数据库、表、记录

  • 数据库的层次结构
  • 表的概念和组成
  • 记录的定义

1.2.2 主键、外键

  • 主键的作用和特性
  • 外键的定义和使用
  • 关系约束

1.2.3 数据类型

  • 整数类型
  • 浮点数类型
  • 字符串类型
  • 日期和时间类型
  • 枚举和集合类型

1.3 MySQL安装与配置

1.3.1 Windows安装

  • 下载MySQL安装包
  • 安装步骤
  • 配置系统环境变量

1.3.2 Linux安装

  • 使用包管理器安装
  • 源代码编译安装
  • 安全配置

1.3.3 连接MySQL

  • 命令行连接
  • 图形化工具连接
  • 常见连接问题排查

代码实践

1.1 数据库基本操作示例

1.1.1 创建数据库
-- 创建新数据库
CREATE DATABASE IF NOT EXISTS learning_mysql;-- 选择数据库
USE learning_mysql;
1.1.2 创建表结构
-- 创建学生信息表
CREATE TABLE students (id INT PRIMARY KEY AUTO_INCREMENT,name VARCHAR(50) NOT NULL,age INT,gender ENUM('Male', 'Female'),email VARCHAR(100) UNIQUE,created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
1.1.3 插入数据
-- 插入学生记录
INSERT INTO students (name, age, gender, email) VALUES 
('张三', 20, 'Male', 'zhangsan@example.com'),
('李四', 22, 'Female', 'lisi@example.com');

1.2 数据类型详解

整数类型示例
CREATE TABLE number_types (tiny_int TINYINT,          -- 8位有符号整数small_int SMALLINT,        -- 16位有符号整数medium_int MEDIUMINT,      -- 24位有符号整数normal_int INT,            -- 32位有符号整数big_int BIGINT             -- 64位有符号整数
);
字符串类型示例
CREATE TABLE string_types (char_type CHAR(10),        -- 固定长度字符串varchar_type VARCHAR(255), -- 可变长度字符串text_type TEXT,            -- 文本类型enum_type ENUM('Option1', 'Option2', 'Option3') -- 枚举类型
);
日期和时间类型
CREATE TABLE date_types (date_col DATE,             -- 日期time_col TIME,             -- 时间datetime_col DATETIME,     -- 日期和时间timestamp_col TIMESTAMP    -- 时间戳
);

1.3 MySQL安装与配置实践

1.3.1 验证MySQL安装
# 检查MySQL版本
mysql --version# 登录MySQL
mysql -u root -p
1.3.2 基本系统配置
-- 查看当前MySQL版本
SELECT VERSION();-- 查看系统变量
SHOW VARIABLES LIKE 'character_set_%';
SHOW VARIABLES LIKE 'collation_%';
http://www.lryc.cn/news/515913.html

相关文章:

  • C++教程 | string类的定义和初始化方法
  • React中的合成事件
  • [SMARTFORMS] 创建FORM
  • 成都和力九垠科技有限公司九垠赢系统Common存在任意文件上传漏洞
  • 基于Python的考研学习系统
  • 『SQLite』几种向表中插入数据的方法
  • 什么是Kafka的重平衡机制?
  • pdf预览 报:Failed to load module script
  • AI 角色扮演法的深度剖析与实践
  • weblogic问题
  • Qt仿音乐播放器:客户端唯一化
  • ceph文件系统
  • 【数据结构-堆】力扣2530. 执行 K 次操作后的最大分数
  • Java jdk8新特性:Stream 流
  • 房产销售系统(源码+数据库+文档)
  • Vue 项目自动化部署:Coding + Jenkins + Nginx 实践分享
  • 从零开始开发纯血鸿蒙应用之实现起始页
  • CG顶会论文阅读|《科技论文写作》硕士课程报告
  • 【Python运维】使用Python与Docker进行高效的容器化应用管理
  • 【人工智能】基于Python与OpenCV构建简单车道检测算法:自动驾驶技术的入门与实践
  • 实时数仓: Hudi 表管理、Flink 性能调优或治理工具脚本
  • Kotlin 数据类与密封类
  • 大模型推理加速调研(框架、方法)
  • C语言进阶(3)--字符函数和字符串函数
  • 微服务拆分的艺术:构建高效、灵活的系统架构
  • 记录一次电脑被入侵用来挖矿的过程(Trojan、Miner、Hack、turminoob)
  • 计算机xinput1_4.dll丢失怎么修复?
  • 高等数学学习笔记 ☞ 连续函数的运算与性质
  • k8s基础(4)—Kubernetes-Service
  • CAN或者CANFD的Busoff的恢复时间会受到报文周期的影响么?