mysql基础价绍
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle旗下产品。MySQL是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的RDBMS (Relational Database Management System,关系数据库管理系统)应用软件 。
在操作上,MySQL支持SQL语法规则,包括创建数据库、显示数据库、使用数据库、修改数据库和删除数据库等SQL库操作。同时,也可以进行SQL表(字段)操作,如创建数据表、显示数据表、查看数据表、更改数据表、新增字段、更改字段名、修改字段和删除字段等。此外,还支持SQL数据操作。
事务的四大特性ACID(原子性、一致性、隔离性、持久性)也是MySQL的重要一环。特别是在需要处理大量数据的网站中,由于MySQL具有体积小、速度快、总体拥有成本低的特点,因此MySQL通常被开发者选择作为网站数据库。
MySQL特点
- 开源免费
- 跨平台
- 高性能
- 易于使用
- 安全性高
MySQL的安装和配置
1. 首先,需要访问MySQL官方网站进行下载,可以选择对应的版本进行下载。推荐选择离线安装包以节省安装时间。
2. 下载完成后,运行安装程序并按照提示进行操作,你可以选择自定义安装或者默认设置。
3. 在安装过程中,需要设置root用户的密码,以及其他相关的配置信息。请确保记住这些信息,后续的管理操作会用到。
4. 完成安装后,可以通过命令行工具进入MySQL并进行基本的操作,如创建数据库、用户等。
5. 最后,如果需要在系统环境变量中添加MySQL的路径,以便在任何位置都可以方便地使用mysql命令,可以配置环境变量。
MySQL基础命令举例
1. 创建数据库
```
CREATE DATABASE mydb;
```
2. 显示所有数据库
```
SHOW DATABASES;
```
3. 使用数据库
```
USE mydb;
```
4. 显示当前使用的数据库
```
SELECT DATABASE();
```
5. 创建数据表
```
CREATE TABLE mytable (id INT PRIMARY KEY, name VARCHAR(20));
```
6. 显示所有数据表
```
SHOW TABLES;
```
7. 查看数据表结构
```
DESCRIBE mytable;
```
8. 插入数据
```
INSERT INTO mytable (id, name) VALUES (1, 'Tom');
```
9. 更新数据(修改)
```
UPDATE mytable SET name='Jerry' WHERE id=1;
```
10. 删除数据(删除)
DELETE FROM mytable WHERE id=1;
MySQL通用数据命令操作举例
1. 创建数据库:
`CREATE DATABASE 数据库名;`
2. 删除数据库:
`DROP DATABASE 数据库名;`
3. 查看所有数据库:
`SHOW DATABASES;`
4. 选择数据库:
`USE 数据库名;`
5. 创建表:
`CREATE TABLE 表名 (列名1 数据类型, 列名2 数据类型, ...);`
6. 删除表:
`DROP TABLE 表名;`
7. 查看所有表:
`SHOW TABLES;`
8. 查看表结构:
`DESCRIBE 表名;`
9. 插入数据:
`INSERT INTO 表名 (列名1, 列名2, ...) VALUES (值1, 值2, ...);`
10. 更新数据:
`UPDATE 表名 SET 列名1=值1, 列名2=值2, ... WHERE 条件;`
11. 删除数据:
`DELETE FROM 表名 WHERE 条件;`
12. 查询数据:
`SELECT 列名1, 列名2, ... FROM 表名 WHERE 条件;`
13. 排序数据:
`SELECT 列名1, 列名2, ... FROM 表名 ORDER BY 列名 ASC/DESC;`
14. 分组数据:
`SELECT 列名1, 列名2, ... FROM 表名 GROUP BY 列名;`
15. 聚合函数:
`SELECT COUNT(列名), SUM(列名), AVG(列名), MAX(列名), MIN(列名) FROM 表名;`
16. 连接表:
`SELECT * FROM 表1 INNER JOIN 表2 ON 表1.关联列 = 表2.关联列;`
17. 左连接表:
`SELECT * FROM 表1 LEFT JOIN 表2 ON 表1.关联列 = 表2.关联列;`
18. 右连接表:
`SELECT * FROM 表1 RIGHT JOIN 表2 ON 表1.关联列 = 表2.关联列;`
19. 全连接表:
`SELECT * FROM 表1 FULL JOIN 表2 ON 表1.关联列 = 表2.关联列;`
20. 子查询:
`SELECT * FROM 表名 WHERE 列名 IN (SELECT 列名 FROM 表名);`
MySQL字符串类型基础举例
1. CHAR:
固定长度的字符串,最大长度为255个字符。例如:`CHAR(10)`表示长度为10个字符的字符串。
2. VARCHAR:
可变长度的字符串,最大长度为65535个字符。例如:`VARCHAR(20)`表示长度最多为20个字符的字符串。
3. BINARY:
二进制字符串,最大长度为65535个字符。与普通的字符串不同,BINARY类型的字符串以“\x”开头表示十六进制数。例如:`BINARY 'abc'`表示一个包含三个字节的二进制字符串。
4. VARBINARY:
可变长度的二进制字符串,最大长度为65535个字符。与BINARY类似,但不需要使用“\x”前缀表示十六进制数。例如:`VARBINARY(20)`表示长度最多为20个字节的二进制字符串。
5. TINYTEXT:
最大长度为255个字符的文本字符串。
6. TEXT:
最大长度为65,535个字符的文本字符串。
7. MEDIUMTEXT:
最大长度为16,777,215个字符的文本字符串。
8. LONGTEXT:
最大长度为4,294,967,295个字符的文本字符串。
以上是MySQL中常用的字符串类型,根据实际需求选择合适的类型可以提高数据库的性能和存储效率。