Linux应用开发————mysql数据库

数据库概述

什么是数据库(database)?

数据库是一种数据管理的管理软件,它的作用是为了有效管理数据,形成一个尽可能无几余的数据集合,并能提供接口,方便用户使用。

数据库能用来干什么?

顾名思义,仓库就是用来保存东西的,所以数据库的作用就是保存、管理数据。

数据库的核心

数据库管理系统提供很多的功能,可以通过SQL(结构化查询语言)来定义和操作数据,维护数据的完整性和安全性,以及进行各种数据库管理。

mysql数据管理层级

SQL(结构化查询语句)

mysql数据库基本操作

1.登陆

cs 复制代码
mysql -h [主机名或IP]-u [用户]-p

2.退出

cs 复制代码
exit;或者 quit;

3.显示

cs 复制代码
show databases;

4.选择数据库

cs 复制代码
use 数据库名

5.创建

cs 复制代码
create database (可选)[if not exists] 数据库名

数据库命名规则:

必须是合法的名称,不能同名;名称可以由任意字母,数字,"或"$"组成,可以用上述任意字符开头,但是不能全部为数字长度限制 -数据库,表,列,索引最多由64个字符组成,不能使用mysql 的关键字作为数据库名或表名。

6.删除

cs 复制代码
drop database (可选)[if exists] 数据库名

mysql数据类型

1.数值型

|-----------|----|---------------------|---------------|-------|
| 类型 | 字节 | 范围(有符号) | 范围(有符号) | 说明 |
| TINYINT | 1 | (-128--127) | (0--255) | 小整数型 |
| SAMLLINT | 2 | (-32768--32767) | (0--65535) | 大整数型 |
| MEDIUMINT | 3 | (-8388608--8388607) | (0--16777215) | 大整数型 |
| INT | 4 | ...... | ...... | 大整数型 |
| BIGINT | 8 | ...... | ...... | 极大整数型 |
| FLOAT | 4 | ...... | ...... | 浮点数 |
| DOUBLE | 8 | ...... | ...... | 双精度 |

2.字符串型

|------------|---------------|-----------------|
| 类型 | 字节 | 说明 |
| CHAR | 0~255 | 定长字符串 |
| VARCHAR | 0~255 | 不定长字符串 |
| TINYBLOB | 0~255 | 不超过255字符的二进制字符串 |
| TINYTEXT | 0~255 | 短文本字符串 |
| BLOB | 0~65535 | 二进制形式的长文本数据 |
| TEXT | 0~65535 | 长文本数据 |
| MEDIUMBLOB | 0~16777215 | 二进制形式的中等长度文本数据 |
| MEDIUMTEXT | 0~16777215 | 中等长度文本数据 |
| LONGBLOB | 0~4294967295 | 二进制形式的极大文本数据 |
| LONGTEXT | 0~4294967295 | 极大文本数据 |

3.时间日期型

|-----------|----|------------------------------------------|---------------------|--------------|
| 类型 | 字节 | 范围 | 格式 | 说明 |
| DATE | 3 | 1000-01-01 /9999-12-31 | YYYY-MM-DD | 日期型 |
| TIME | 3 | -838:59:59 /838:59:59 | HH:MM:SS | 时间值或持续时间 |
| YEAR | 1 | 1901/2155 | YYYY | 年份值 |
| DATETIME | 8 | 1000-01-01 00:00:00 /9999-12-21 23:59:59 | YYYY-MM-DD HH:MM:SS | 混合日期和时间值 |
| TIMESTAMP | 8 | 1970-01-01 00:00:00 /2037年某时 | YYYYMMDD HHMMSS | 混合日期和时间值 时间戳 |

六大约束条件:

1.主键(primary key) 唯一区分一条记录

2.唯一约束 (unique key) 设置唯一约束的字段不允许数据重复

3.非空约束 (not null) 设置非空约束的字段不允许填入 NULL

4.自增约束 (auto_increment) 设置自增约束的字段值会自动增1 (数值型中整型)

5.外键 (foreign key) 父,子表用来在两个表的数据间建立链接,既能确保数据完

整性,也能表现表之间的关系

6.默认约束 (default) 设置默认约束的字段如果不指定数据,系统将以默认值填入;

注意(关于级联):

1,多对多需要涉及最少三张表---中间表

  1. 建立了外键后:

从表修改时,要注意主表是否有这样的值。

主表在修改或删除时,要不要动从表:

要动:配置级联修改, 级联删除

不动:无需配置级联修改, 级联删除

相关推荐
通信瓦工13 分钟前
利用浊度和电导率测量确定乙二醇基流体的质量
网络·数据库·ai
小马同学-1 小时前
mysql数据库原理
数据库·mysql
东方护航数据恢复(深圳)1 小时前
政务信创案例:达梦 DM8 数据库掉电页损坏,48 小时修复实录【东方护航数据恢复深圳店】
数据库·数据恢复·it运维·服务器数据恢复·二次开盘·硬盘开盘
AC赳赳老秦2 小时前
OpenClaw 数据引用规范自动生成:为公开数据构建可信来源标注与标准引用体系
大数据·开发语言·汇编·数据库·人工智能·deepseek·openclaw
小蒜学长3 小时前
校园社团招新网站的设计与实现(代码+数据库+LW)
java·数据库·spring boot·后端·校园社团招新网站
布莱克6054 小时前
MySQL 增删改查(CRUD)语法详解
数据库·mysql·增删改查
Dovis(誓平步青云)4 小时前
几个方案来回选不定?做一个随时切换的候选推荐页
android·java·服务器·开发语言·javascript·数据库·智能化
2501_933670795 小时前
2027届大数据管理与应用求职数字化转型顾问:项目、SQL、业务理解怎么排优先级
数据库·sql
东方护航数据恢复(深圳)5 小时前
物流案例:勒索病毒 Mallox 加密 ERP 数据库,旧备份 + 残留页重组实录【东方护航数据恢复深圳店】
数据库·数据恢复·勒索病毒·二次开盘·开盘·数据镜像
.Hypocritical.5 小时前
Redis从入门到实战:核心原理、场景落地与避坑指南
数据库·redis·缓存