江苏计算机专转本 技能Mysql知识点总结(一)
一、概述
1.使用命令行窗口链接MySQL数据库
mysql -u用户名 -p 密码
2.数据表中的一行称为 一条记录
3.SQL Server、Oracle、Mysql、DB2、SyBase,PostgreSQL全是关系数据库。
MongoDB、Cassandra、Neo4j全是非关系数据库。
4.E-R图
- 矩形:表示实体。
- 菱形:表示实体之间的关系。
- 椭圆:表示属性,描述实体的特征。
5.概念模型中的联系可分为一对一联系、一对多联系和多对多联系三种。
6.描述数据库操作的三种语言:
1. DQL - 数据查询语言 (查询数据)
select、order by、 group by
2.DML - 数据操作语言(对数据进行操作)
update、insert into、delete
3.DDL - 数据定义语言(定义数据库结构)
create、alter、drop、desc、use、
show tables (show full tables) [后两者严格来说属于 数据库管理命令]
7.show 和 desc
功能 | 列出当前数据库中的所有表 | 显示指定表的结构信息 |
返回内容 | 返回当前选择的数据库中的所有数据库表名称 | 返回字段名、数据类型、是否可以为空、主键、默认值等列的详细信息 |
输入格式 | 不需要任何参数 | 需要指定表名 |
用法示例 | SHOW TABLES; | DESC table; |
可用性 | 返回信息量少,主要用于获取数据库中表的名称 | 返回详细的信息,主要用于了解表的结构和设计 |
二、创建数据库和表
1.创建
//创建一个名为db的数据库
create database db;
//创建一个使用utf-8字符集的数据库db
create database db character set ust-8;
//创建一个使用utf-8字符集,并且带有校验规则的数据库db
create database db character set utf-8 collate 校验规则;
2.查看、删除数据库
// 显示数据库语句
show databases;
// 显示数据库创建语句
show create database 数据库名字;
// 数据库删除语句
drop database 数据库名称;
3.修改、备份数据库
// 更改数据库名称
ALTER DATABASE 旧数据库名 RENAME TO 新数据库名;
// 更改数据库字符集
ALTER DATABASE 数据库名 CHARACTER SET = 新字符集;
// 更改校验规则
ALTER DATABASE 数据库名 COLLATE = 校验规则;
// 备份数据库表中的数据
mysqldump -u 用户名 -p 数据库名 >文件名.sql;
// 恢复数据库
source 文件名.sql;
4.创建数据表
CREATE TABLE 表名 (
列名1 数据类型 [约束],
列名2 数据类型 [约束],
... //最后一列 后面不用加“,”
);
创建表时所需的数据类型
- 整数类型:
INT
,TINYINT
,BIGINT
,SMALLINT
- 浮点数类型:
FLOAT
,DOUBLE
- 字符串类型:
VARCHAR(n)
,CHAR(n)
,TEXT
- 日期和时间类型:
DATE
,DATETIME
,TIMESTAMP
,TIME
创建表时所需的约束条件
PRIMARY KEY
:主键,唯一标识表中的每一行。不允许为空和重复。FOREIGN KEY
:外键,指向另一表的主键,确保数据之间的关系完整性。UNIQUE
:唯一约束,确保列中的所有值都是唯一的。NOT NULL
:非空。
注意:主键大多数会和自增一同出现:AUTO_INCREMENT(该类型必须是int类型)
5.修改表结构
// 添加新列
ALTER TABLE 表名 ADD COLUMN 列名 数据类型 [约束];
// 修改现有列的属性
ALTER TABLE 表名 MODIFY COLUMN 列名 新数据类型 [约束];
// 重命名列
ALTER TABLE 表名 CHANGE 列名 新列名 数据类型 [约束];
// 删除列
ALTER TABLE 表名 DROP COLUMN 列名;
// 添加主键
ALTER TABLE 表名 ADD PRIMARY KEY (列名);
// 删除主键
ALTER TABLE 表名 DROP PRIMARY KEY;
// 添加外键
ALTER TABLE 表名 ADD CONSTRAINT 外键名 FOREIGN KEY (列名) REFERENCES 另一个表 (列名);
// 删除外键
ALTER TABLE 表名 DROP FOREIGN KEY 外键名;
6.删除表和数据库
// 删除表结构
DROP table 表名;
// 删除表记录
DELETE from 表名 [where 条件语句];
// 删除数据库
DROP database 库名;