From 3e2c103361e00d1dcdba330d0a41569dc926115b Mon Sep 17 00:00:00 2001 From: mloluyu Date: Fri, 14 Nov 2025 13:24:53 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E6=96=87=E4=BB=B6=E8=87=B3?= =?UTF-8?q?=20/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 数据库4.1.md | 31 +++++++++++++++++++++++++++++++ 数据库4.2.md | 29 +++++++++++++++++++++++++++++ 数据库4.3.md | 31 +++++++++++++++++++++++++++++++ 数据库4.4.md | 17 +++++++++++++++++ 数据库5.1.md | 19 +++++++++++++++++++ 5 files changed, 127 insertions(+) create mode 100644 数据库4.1.md create mode 100644 数据库4.2.md create mode 100644 数据库4.3.md create mode 100644 数据库4.4.md create mode 100644 数据库5.1.md diff --git a/数据库4.1.md b/数据库4.1.md new file mode 100644 index 0000000..60b92c1 --- /dev/null +++ b/数据库4.1.md @@ -0,0 +1,31 @@ +# 一、概述 +1. **表** 是数据库对象(最重要、最基本) +2. **表** 是存储数据的基本单位 +3. 数据库中包含若干张表(不能同名) +4. 表是由 **行** 和 **列** 组成的 +5. 表的一行称之为一条 **记录** +# 二、数据类型(重点) +1. 整数类型(5种) + * tinyint + * smallint + * mediumint + * int + * bigint +2. 小数类型(2种:浮点数与定点数类型) + * float + * double + * decimal(M~D) +3. 字符串类型(6种) + * Char + * varchar + * tinytext + * text + * mediumtext + * longtext +4. 日期时间类型(五种) + * Date + * datetime + * timestamp + * time + * year +5. 二进制类型(七种) \ No newline at end of file diff --git a/数据库4.2.md b/数据库4.2.md new file mode 100644 index 0000000..1f9a723 --- /dev/null +++ b/数据库4.2.md @@ -0,0 +1,29 @@ +# 一、表的创建(重点) + +语法: +```sql +create table 表名( + 字段1 数据类型1 [完整性约束], + 字段2 数据类型2 [完整性约束], + ... + 字段n 数据类型n [完整性约束] + #如果有外键 + FOREIGN KEY (外键字段名) REFERENCE 表(外键字段名) + #多主键 + PRIMARY KEY(字段1, 字段2) +) [存储引擎]; +``` +# 二、 表的查看 + +语法: +`show tables;`显示当前数据库中所有的表(列表形式) +`desc [表名];` 显示表结构 +`show columns from [表名]` 显示表结构 +`show create table [表名]` 显示表结构 +# 三、约束条件 + +1. 主键约束 primary key +2. 唯一约束 unique +3. 非空约束 not null +4. 默认值约束 default +5. 外键约束 foreign key \ No newline at end of file diff --git a/数据库4.3.md b/数据库4.3.md new file mode 100644 index 0000000..c2bd93d --- /dev/null +++ b/数据库4.3.md @@ -0,0 +1,31 @@ +在使用表的过程中,如果您需要对表进行修改,您可以使用 `ALTER TABLE` 语句。通过 `ALTER TABLE` 语句,您可以重命名表、重命名列、添加列、删除列、修改列的属性等。 + +## ALTER TABLE 语法 + +```sql +ALTER TABLE table_name [alter_action options], ... +``` + +其中 `alter_action` 是一个修改动作,包括: + +- `ADD` 关键字可用来添加列、索引、约束等,包括: + - `ADD [COLUMN] col_name`: 添加列 + - `ADD INDEX index_name`: 添加索引 + - `ADD PRIMARY KEY`: 添加主键 + - `ADD FOREIGN KEY fk_symbol`: 添加外键 + - `ADD UNIQUE INDEX`: 添加唯一索引 + - `ADD CHECK symbol`: 添加检查约束 +- `DROP` 关键字可用来删除列、索引、约束等,包括: + - `DROP [COLUMN] col_name`: 删除列 + - `ADD INDEX index_name`: 删除索引 + - `DROP PRIMARY KEY`: 删除主键 + - `DROP FOREIGN KEY fk_symbol`: 删除外键 + - `DROP CHECK symbol`: 删除检查约束 +- `MODIFY` 关键字用来修改列的定义。与 `CHANGE` 关键字不同,它不能重命名列。例如: `MODIFY [COLUMN] 列名 新类型定义`。 + +- `CHANGE` 关键字用来修改列的定义。与 `MODIFY` 关键字不同,它可以重命名列。例如: `CHANGE [COLUMN] 旧列名 新列名 类型定义`。 + +- `RENAME` 关键字可以重命名列、索引和表。包括: + - `RENAME COLUMN old_col_name TO new_col_name`: 重命名列。 + - `RENAME INDEX old_index_name TO new_index_name`: 重命名索引。 + - `RENAME new_tbl_name`: 重命名表。 \ No newline at end of file diff --git a/数据库4.4.md b/数据库4.4.md new file mode 100644 index 0000000..e756005 --- /dev/null +++ b/数据库4.4.md @@ -0,0 +1,17 @@ +# 添加数据(增) +1. 一次插入一条完整记录:`INSERT INTO <表名> values(...数据);` +2. 一次插入一条部分记录:`INSERT INTO <表名>(部分字段) values(...数据)` +3. 一次插入多条记录语法:`INSERT INTO <表名> values(...数据),(...数据)` +# 修改数据(改) +语法: +```sql +UPDATE <表名> +SET <字段1>=<值1>,<字段1>=<值1>... +WHERE conditon; +``` +# 删除数据(删) +语法: +```sql +DELETE FROM table_name +WHERE condition; +``` diff --git a/数据库5.1.md b/数据库5.1.md new file mode 100644 index 0000000..fdde3a3 --- /dev/null +++ b/数据库5.1.md @@ -0,0 +1,19 @@ +# 单表无条件查询 + +## 一、select语句的一般**格式**(重点) +```sql +SELECT 字段名 (多个字段用逗号隔开) +FROM 表名 +[WHERE 条件表达式] +[GROUP BY 字段名(分组)] +[HAVING 条件表达式(筛选)] +[ORDER BY 字段名(排序)] +[LIMIT 数字 (只取前N个)]; +``` +# 二、单表无条件查询 + +```sql +select [all|distinct] 字段名 +from 表名 +limit[起始值,终点值]; +``` \ No newline at end of file