详细讲解数据库与表的创建与管理

在这篇文章中,我们将详细介绍如何在 MySQL 中创建和管理数据库与表。这些是数据库开发中最基础的操作,掌握了它们,你就能够有效地管理和维护数据库。文章将以简明易懂的方式,通过示例代码帮助你更好地理解每一个操作。

一、创建数据库的方法

创建数据库是使用MySQL的第一步。以下是创建数据库的基本方法:

复制
CREATE DATABASE database_name;1.

例如,创建一个名为 my_company 的数据库:

复制
CREATE DATABASE my_company;1.

如果你想要在数据库不存在时才创建它,可以使用:

复制
CREATE DATABASE IF NOT EXISTS my_company;1.

你还可以在创建数据库时指定字符集和排序规则:

复制
CREATE DATABASE my_company CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;1.2.3.

二、数据库的基本操作

1. 查看数据库

要查看所有存在的数据库:

复制
SHOW DATABASES;1.

要查看特定数据库的创建语句:

复制
SHOW CREATE DATABASE my_company;1.
2. 修改数据库

你可以修改数据库的字符集和排序规则:

复制
ALTER DATABASE my_company CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;1.2.3.
3. 删除数据库

删除数据库的语法如下:

复制
DROP DATABASE my_company;1.

为了安全起见,你可以加上 IF EXISTS 子句:

复制
DROP DATABASE IF EXISTS my_company;1.

三、创建表的语法与结构

创建表是组织数据的关键步骤。以下是创建表的基本语法:

复制
CREATE TABLE table_name ( column1 datatype constraint, column2 datatype constraint, column3 datatype constraint, .... );1.2.3.4.5.6.

例如,创建一个 employees 表:

复制
CREATE TABLE employees ( id INT AUTO_INCREMENT PRIMARY KEY, first_name VARCHAR(50) NOT NULL, last_name VARCHAR(50) NOT NULL, email VARCHAR(100) UNIQUE, hire_date DATE, salary DECIMAL(10, 2) );1.2.3.4.5.6.7.8.

这个例子展示了几个重要的概念:

AUTO_INCREMENT: 自动递增PRIMARY KEY: 主键约束NOT NULL: 非空约束UNIQUE: 唯一约束

四、表的基本操作

1. 查看表

查看数据库中所有的表:

复制
SHOW TABLES;1.

查看表的结构:

复制
DESCRIBE employees;1.

或者:

复制
SHOW COLUMNS FROM employees;1.
2. 修改表

添加新列:

复制
ALTER TABLE employees ADD COLUMN department VARCHAR(50);1.2.

修改列的数据类型:

复制
ALTER TABLE employees MODIFY COLUMN salary DECIMAL(12, 2);1.2.

删除列:

复制
ALTER TABLE employees DROP COLUMN department;1.2.
3. 删除表

删除表的语法如下:

复制
DROP TABLE employees;1.

同样,为了安全起见,可以加上 IF EXISTS:

复制
DROP TABLE IF EXISTS employees;1.

五、数据类型与约束

1. 常用数据类型

(1) 数值类型:

INT: 整数DECIMAL(M,D): 精确小数,M是总位数,D是小数位数

(2) 字符串类型:

VARCHAR(n): 可变长字符串CHAR(n): 固定长度字符串TEXT: 长文本

(3) 日期和时间类型:

DATE: 日期TIME: 时间DATETIME: 日期和时间TIMESTAMP: 时间戳

(4) 布尔类型:

BOOLEAN 或 BOOL: 布尔值(TRUE 或 FALSE)2. 约束PRIMARY KEY: 主键约束FOREIGN KEY: 外键约束UNIQUE: 唯一约束NOT NULL: 非空约束CHECK: 检查约束(MySQL 8.0.16 及以上版本支持)DEFAULT: 默认值约束

例如,创建一个带有这些约束的 orders 表:

复制
CREATE TABLE orders ( order_id INT AUTO_INCREMENT PRIMARY KEY, customer_id INT NOT NULL, order_date DATETIME DEFAULT CURRENT_TIMESTAMP, total_amount DECIMAL(10, 2) CHECK (total_amount > 0), status ENUM(pending, shipped, delivered) DEFAULT pending, FOREIGN KEY (customer_id) REFERENCES customers(id) );1.2.3.4.5.6.7.8.

这个例子展示了:

主键约束(PRIMARY KEY)非空约束(NOT NULL)默认值约束(DEFAULT)检查约束(CHECK)外键约束(FOREIGN KEY)

结语

掌握数据库和表的创建与管理是使用MySQL的基础。本文详细介绍了创建和管理数据库与表的方法,包括基本操作、数据类型和约束的使用。通过实践这些操作,你将能够更好地设计和管理你的数据库结构。良好的数据库设计是高效和可维护的数据库应用程序的基础。在实际应用中,要根据具体需求选择合适的数据类型和约束,以确保数据的完整性和一致性。

THE END
本站服务器由亿华云赞助提供-企业级高防云服务器