第一节:MySQL的基本操作
1. 创建数据库
在 MySQL 中,创建数据库的步骤如下:
命令行操作
-
打开 MySQL 命令行客户端或连接到 MySQL 服务器。
-
输入以下命令创建一个数据库:
sqlCREATE DATABASE database_name;
例如,创建一个名为
test_db
的数据库:sqlCREATE DATABASE test_db;
图形化操作
如果使用图形化管理工具(如 phpMyAdmin 或 MySQL Workbench),创建数据库的步骤如下:
- 打开工具并连接到 MySQL 服务器。
- 在左侧的导航面板中找到 "Databases" 或 "Schemas"。
- 点击 "Create Database" 或 "New Schema"。
- 输入数据库名称(例如
test_db
),然后点击 "Apply" 或 "OK"。
2. 列出所有的数据库
命令行操作
-
在 MySQL 命令行客户端中输入以下命令列出所有数据库:
sqlSHOW DATABASES;
图形化操作
- 打开图形化管理工具并连接到 MySQL 服务器。
- 在左侧的导航面板中,您将看到所有现有的数据库列表。
3. 语法关键字
MySQL 中常用的语法关键字包括:
CREATE
: 用于创建数据库、表格、视图等。SHOW
: 用于显示数据库、表格等信息。DROP
: 用于删除数据库、表格等。SELECT
: 用于从数据库中检索数据。INSERT
: 用于向表格中插入数据。UPDATE
: 用于更新表格中的数据。DELETE
: 用于删除表格中的数据。
4. 删除数据库
命令行操作
-
在 MySQL 命令行客户端中输入以下命令删除数据库:
sqlDROP DATABASE database_name;
例如,删除名为
test_db
的数据库:sqlDROP DATABASE test_db;
图形化操作
- 打开图形化管理工具并连接到 MySQL 服务器。
- 在左侧的导航面板中找到要删除的数据库(例如
test_db
)。 - 右键点击数据库名称,选择 "Drop Database" 或 "Delete"。
- 确认删除操作。
第二节:如何创建数据库的表格
1. 介绍MySQL的数据类型
MySQL 提供了多种数据类型,用于存储不同类型的数据。常见的数据类型包括:
- 整数类型 :如
INT
,TINYINT
,SMALLINT
,MEDIUMINT
,BIGINT
。 - 字符串类型 :如
CHAR
,VARCHAR
,TEXT
,BLOB
。 - 日期和时间类型 :如
DATE
,TIME
,DATETIME
,TIMESTAMP
,YEAR
。 - 浮点数类型 :如
FLOAT
,DOUBLE
,DECIMAL
。
2. 创建表格示例
命令行操作
-
在 MySQL 命令行客户端中输入以下命令创建一个表格:
sqlCREATE TABLE table_name ( column1_name column1_type, column2_name column2_type, ... );
例如,创建一个名为
students
的表格,包括学生 ID、姓名和年龄:sqlCREATE TABLE students ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(100), age INT );
图形化操作
- 打开图形化管理工具并连接到 MySQL 服务器。
- 选择要创建表格的数据库。
- 点击 "Create Table" 或 "New Table"。
- 输入表格名称(例如
students
)。 - 添加列并指定数据类型(例如
id
为INT
,name
为VARCHAR(100)
,age
为INT
)。 - 点击 "Apply" 或 "OK" 创建表格。
3. 如何增删表格中的要素
插入数据
命令行操作
-
在 MySQL 命令行客户端中输入以下命令向表格中插入数据:
sqlINSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);
例如,向
students
表格中插入一条记录:sqlINSERT INTO students (name, age) VALUES ('John Doe', 20);
图形化操作
- 打开图形化管理工具并连接到 MySQL 服务器。
- 选择要插入数据的表格(例如
students
)。 - 点击 "Insert" 或 "New Row"。
- 输入数据值。
- 点击 "Apply" 或 "OK"。
删除数据
命令行操作
-
在 MySQL 命令行客户端中输入以下命令删除表格中的数据:
sqlDELETE FROM table_name WHERE condition;
例如,删除
students
表格中年龄大于20的所有记录:sqlDELETE FROM students WHERE age > 20;
图形化操作
- 打开图形化管理工具并连接到 MySQL 服务器。
- 选择要删除数据的表格(例如
students
)。 - 点击 "Delete" 或 "Remove Row"。
- 指定删除条件(例如,选择要删除的行)。
- 点击 "Apply" 或 "OK"。
更新数据
命令行操作
-
在 MySQL 命令行客户端中输入以下命令更新表格中的数据:
sqlUPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;
例如,更新
students
表格中 ID 为1的学生姓名:sqlUPDATE students SET name = 'Jane Doe' WHERE id = 1;
图形化操作
- 打开图形化管理工具并连接到 MySQL 服务器。
- 选择要更新数据的表格(例如
students
)。 - 点击 "Update" 或 "Edit Row"。
- 修改数据值。
- 点击 "Apply" 或 "OK"。
通过以上步骤,您可以在 MySQL 中完成基本的数据库和表格操作,包括创建、列出、删除数据库以及创建、增删改查表格中的数据。
第三节:如何在创建的表格中插入要素
在 MySQL 中,向表格中插入数据(要素)时有多种方式,可以按照顺序或非顺序插入数据,同时需要注意缺省值 NULL
的使用。以下是详细操作说明:
1. 如何正常增添要素
命令行操作
-
在 MySQL 命令行客户端中输入以下命令向表格中插入数据:
sqlINSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);
例如,向
students
表格中插入一条记录:sqlINSERT INTO students (name, age) VALUES ('John Doe', 20);
图形化操作
- 打开图形化管理工具并连接到 MySQL 服务器。
- 选择要插入数据的表格(例如
students
)。 - 点击 "Insert" 或 "New Row"。
- 输入数据值。
- 点击 "Apply" 或 "OK"。
2. 如何非顺序写入要素
有时您可能不按表格中列的顺序插入数据。在这种情况下,需要明确指定插入的列名。
命令行操作
-
在 MySQL 命令行客户端中输入以下命令指定列名插入数据:
sqlINSERT INTO table_name (column2, column1, ...) VALUES (value2, value1, ...);
例如,向
students
表格中以非正常顺序插入数据:sqlINSERT INTO students (age, name) VALUES (20, 'John Doe');
图形化操作
- 打开图形化管理工具并连接到 MySQL 服务器。
- 选择要插入数据的表格(例如
students
)。 - 点击 "Insert" 或 "New Row"。
- 输入数据值,注意按照指定的列名顺序输入。
- 点击 "Apply" 或 "OK"。
3. 如何删除指定要素
命令行操作
-
在 MySQL 命令行客户端中输入以下命令删除指定要素:
sqlDELETE FROM table_name WHERE condition;
例如,删除
students
表格中年龄为20的记录:sqlDELETE FROM students WHERE age = 20;
图形化操作
- 打开图形化管理工具并连接到 MySQL 服务器。
- 选择要删除数据的表格(例如
students
)。 - 点击 "Delete" 或 "Remove Row"。
- 指定删除条件(例如,选择要删除的行)。
- 点击 "Apply" 或 "OK"。
4. 缺省值 NULL 的用法
NULL
表示数据缺失或未知值。在插入数据时,如果某列允许 NULL
值,可以显式插入 NULL
,也可以在不指定该列值时默认为 NULL
。
命令行操作
-
在 MySQL 命令行客户端中输入以下命令插入
NULL
值:sqlINSERT INTO table_name (column1, column2, ...) VALUES (value1, NULL, ...);
例如,向
students
表格中插入NULL
值:sqlINSERT INTO students (name, age) VALUES ('John Doe', NULL);
5. 插入时应该注意的事项
- 数据类型匹配:确保插入的数据类型与表格定义的列数据类型匹配。
- 主键唯一性:如果表格定义了主键,插入的数据必须确保主键值唯一。
- 非空约束 :如果某列定义了
NOT NULL
约束,则插入的数据不能为NULL
。 - 外键约束:确保插入的数据满足外键约束条件。
通过以上步骤,您可以在 MySQL 中完成对表格的增删操作,处理数据缺省值 NULL
,并遵循插入数据时的注意事项,确保数据的完整性和一致性。
第四节:讲述表格创建中的限制
在创建表格时,可以使用各种约束(constraints)来确保数据的完整性和一致性。常见的约束包括主键、唯一性、非空、外键和检查约束。以下是详细说明和示例:
常见约束类型
-
PRIMARY KEY(主键):
- 主键约束唯一标识表格中的每一行。一个表只能有一个主键,但主键可以由多个列组成(联合主键)。
sqlCREATE TABLE example ( id INT PRIMARY KEY, name VARCHAR(50) );
-
UNIQUE(唯一约束):
- 唯一约束确保一列或多列的值在表格中是唯一的,允许一个表格中有多个唯一约束。
sqlCREATE TABLE example ( id INT, email VARCHAR(100) UNIQUE );
-
NOT NULL(非空约束):
- 非空约束确保一列不能存储 NULL 值。
sqlCREATE TABLE example ( id INT, name VARCHAR(50) NOT NULL );
-
FOREIGN KEY(外键约束):
- 外键约束确保一个表中的值必须在另一个表中存在,用于维护表之间的引用完整性。
sqlCREATE TABLE department ( id INT PRIMARY KEY, name VARCHAR(50) ); CREATE TABLE employee ( id INT PRIMARY KEY, name VARCHAR(50), department_id INT, FOREIGN KEY (department_id) REFERENCES department(id) );
-
CHECK(检查约束):
- 检查约束用于确保列中的值符合特定条件。
sqlCREATE TABLE example ( id INT, age INT CHECK (age >= 18) );
示例:使用约束创建表格
以下是一个完整的示例,包括删除现有表格、创建新表格并插入数据的过程。
删除表格
如果表格 student
已存在,需要先删除该表格:
sql
DROP TABLE IF EXISTS `student`;
创建表格并添加约束
创建一个名为 student
的表格,并添加各种约束:
sql
CREATE TABLE `student`(
`student_id` INT AUTO_INCREMENT,
`name` VARCHAR(20) NOT NULL,
`major` VARCHAR(20) UNIQUE,
PRIMARY KEY (`student_id`)
);
此表格包括:
student_id
列为主键,自动递增。name
列为非空。major
列为唯一。
插入数据
向 student
表格插入数据:
sql
INSERT INTO `student` VALUES(1, '小白', '历史');
INSERT INTO `student` VALUES(2, '小黑', '生物');
INSERT INTO `student`(`name`, `major`) VALUES('小黑', '化学');
查询数据
查询 student
表格中的所有数据:
sql
SELECT * FROM `student`;
额外讲解示例
使用上述约束创建表格并插入数据后的结果应如下所示:
sql
DROP TABLE IF EXISTS `student`;
CREATE TABLE `student`(
`student_id` INT AUTO_INCREMENT,
`name` VARCHAR(20) NOT NULL,
`major` VARCHAR(20) UNIQUE,
PRIMARY KEY (`student_id`)
);
INSERT INTO `student` VALUES(1, '小白', '历史');
INSERT INTO `student` VALUES(2, '小黑', '生物');
INSERT INTO `student`(`name`, `major`) VALUES('小黑', '化学');
SELECT * FROM `student`;
在执行上述 SQL 语句后,student
表格将包含以下数据:
student_id | name | major |
---|---|---|
1 | 小白 | 历史 |
2 | 小黑 | 生物 |
3 | 小黑 | 化学 |
第五节:如何修改和删除要素
在 MySQL 中,您可以使用 UPDATE
语句修改表格中的数据,并使用 DELETE
语句删除表格中的数据。以下是详细操作说明和示例:
修改和删除要素的案例
步骤一:设置 SQL 安全更新模式
为了允许对数据的修改和删除操作,可能需要关闭 MySQL 的安全更新模式:
sql
SET SQL_SAFE_UPDATES = 0;
步骤二:删除旧表格并创建新表格
首先,删除旧的 student
表格,并创建一个新的 student
表格:
sql
DROP TABLE IF EXISTS `student`;
CREATE TABLE `student`(
`student_id` INT PRIMARY KEY,
`name` VARCHAR(20),
`major` VARCHAR(20),
`score` INT
);
步骤三:插入数据
向 student
表格中插入一些示例数据:
sql
INSERT INTO `student` VALUES (1, '小白', '英语', 50);
INSERT INTO `student` VALUES (2, '小黄', '生物', 90);
INSERT INTO `student` VALUES (3, '小绿', '历史', 70);
INSERT INTO `student` VALUES (4, '小蓝', '英语', 80);
INSERT INTO `student` VALUES (5, '小黑', '化学', 20);
步骤四:查询数据
查询 student
表格中的所有数据:
sql
SELECT * FROM `student`;
步骤五:修改数据
使用 UPDATE
语句修改表格中的数据,例如将 major
为"英语"的记录修改为"英语文学":
sql
UPDATE `student`
SET `major` = '英语文学'
WHERE `major` = '英语';
步骤六:删除数据
使用 DELETE
语句删除表格中的数据,例如删除 student_id
为 4 的记录:
sql
DELETE FROM `student`
WHERE `student_id` = 4;
详细示例
以下是完整的 SQL 操作步骤:
sql
-- 设置 SQL 安全更新模式
SET SQL_SAFE_UPDATES = 0;
-- 删除旧表格并创建新表格
DROP TABLE IF EXISTS `student`;
CREATE TABLE `student`(
`student_id` INT PRIMARY KEY,
`name` VARCHAR(20),
`major` VARCHAR(20),
`score` INT
);
-- 插入数据
INSERT INTO `student` VALUES (1, '小白', '英语', 50);
INSERT INTO `student` VALUES (2, '小黄', '生物', 90);
INSERT INTO `student` VALUES (3, '小绿', '历史', 70);
INSERT INTO `student` VALUES (4, '小蓝', '英语', 80);
INSERT INTO `student` VALUES (5, '小黑', '化学', 20);
-- 查询数据
SELECT * FROM `student`;
-- 修改数据
UPDATE `student`
SET `major` = '英语文学'
WHERE `major` = '英语';
-- 删除数据
DELETE FROM `student`
WHERE `student_id` = 4;
-- 查询修改和删除后的数据
SELECT * FROM `student`;
修改和删除操作的注意事项
- 谨慎使用
UPDATE
和DELETE
语句 :特别是在没有WHERE
子句的情况下,可能会意外修改或删除表格中的所有数据。 - 备份数据:在执行批量修改或删除操作前,建议先备份数据,以防出现操作失误导致数据丢失。
- 使用事务 :在需要保证数据操作的原子性时,可以使用事务(
START TRANSACTION
,COMMIT
,ROLLBACK
)来确保数据的完整性。
如果这对您有所帮助,希望点赞支持一下作者! 😊
[ 详细全文-点击查看](
)