作者:小编 日期:2023-11-12 浏览: 次
=============
1. 数据库概述
-------
MySQL是一个开源的关系型数据库管理系统(RDBMS)。它使用了一种名为Srucured Query Laguage(SQL)的语言进行数据操作和管理。MySQL基于C和C++编程语言编写,并且提供了许多高效、安全和灵活的特性。
2. 数据类型
------
###
2.1 数值类型
MySQL提供了多种数值类型,包括整数类型(如TIYIT、SMALLIT、MEDIUMIT、IT和BIGIT),浮点数类型(如FLOAT和DOUBLE),以及定点数类型(如DECIMAL)。
###
2.2 字符串类型
字符串类型包括CHAR、VARCHAR、TEXT和BLOB。这些类型用于存储字符数据,其中CHAR是定长字符串,VARCHAR是可变长字符串,TEXT和BLOB用于存储大量文本数据。
###
2.3 日期和时间类型
MySQL提供了多种日期和时间类型,包括DATE、TIME、DATETIME和TIMESTAMP。这些类型用于存储日期和时间信息。
###
2.4 复合类型
MySQL还支持复合类型,如SET和EUM。SET类型用于存储一组离散的值,EUM类型用于定义一个包含固定数量值的列。
3. 数据库操作
-------
###
3.1 创建数据库
使用`CREATE DATABASE`语句创建新的数据库:
```sql
CREATE DATABASE daabase_ame;
```
###
3.2 删除数据库
使用`DROP DATABASE`语句删除数据库:
```sql
DROP DATABASE daabase_ame;
```
###
3.3 修改数据库
可以使用`ALTER DATABASE`语句修改数据库的属性,如更改数据库的编码方式:
```sql
ALTER DATABASE daabase_ame CHARACTER SET uf8mb4 COLLATE uf8mb4_uicode_ci;
```
###
3.4 查询数据库
使用`SHOW DATABASES`语句列出所有的数据库:
```sql
SHOW DATABASES;
```
4. 数据表操作
-------
###
4.1 创建数据表
使用`CREATE TABLE`语句创建新的数据表:
```sql
CREATE TABLE able_ame (colum1 daaype, colum2 daaype, ...);
```
###
4.2 删除数据表
使用`DROP TABLE`语句删除数据表:
```sql
DROP TABLE able_ame;
```
###
4.3 修改数据表
可以使用`ALTER TABLE`语句修改数据表的结构,如添加、修改或删除列:
```sql
ALTER TABLE able_ame ADD colum daaype; -- 添加列
ALTER TABLE able_ame MODIFY colum daaype; -- 修改列定义和类型等属性但不改变列的数量时使用 MODIFY; 而当需要增加新的列或替换已存在的列时可以使用 ADD 和 MODIFY 并用; 但使用 ADD 和 MODIFY 同时,如果只改变一列属性(包括定义和数据类型)那么可以不分顺序执行。 先执行 MODIFY 在执行 ADD 或反之都可以,两者都是同时执行的。如果需要同时添加多个列或修改多个列属性时可以使用 ADD 和 MODIFY 并用,但只能修改已存在的列不能添加不存在的列。如果要添加新列或替换已存在的列则可以使用 ADD ,在后面如果存在 MODIFY 的话则一起执行 MODIFY 里面的修改命令; 或者可以先把原有的数据表删除然后创建新数据表(不过需要注意的是数据表的创建不要让一些无用的重复记录添加到原有的记录中去), 这样就只添加上没有使用的空值的新列即可,这样的数据表除了属性与旧的不同其他字段的内容是不一样的,除了ULL值外没有其他相同的数据记录。在创建新数据表时需要将原有的数据表的记录导入到新数据表中,导入命令为 ISERT ITO able_ame SELECT FROM able_ame WHERE codiio; (注意:如果新旧表结构不一样的话需要先删除旧表再创建新表)或者直接使用 SELECT ITO 命令将旧表的数据导入到新表中。如果新旧表结构不一样的话不能使用 SELECT ITO 或者 ISERT ITO 因为他们的作用是不同的。SELECT ITO 可以说是备份的作用是直接将数据导入备份用的表结构当中并且所有导入的数据是源表当中的原始数据的备份;而 ISERT ITO 是将源表中的数据插入到目标表中,目标表的字段与源表的字段不一定相同。所以如果新旧表的字段不同的话可以使用 ISERT ITO 或者直接使用 SELECT ITO 都可以备份出所有数据的。 但是对于两者相同或者两者不同都可以分别备份出来即可恢复原来的状态即可。 如果要备份整个数据库的话可以使用 mysqldump 或者 mys