当前位置:首页 > 行业动态 > 正文

如何使用命令行在MySQL中创建数据库和表?

创建MySQL数据库表的命令是: CREATE TABLE table_name (column1 datatype, column2 datatype, ...);。

在MySQL中,创建数据库和数据表是进行数据库管理的基础操作,本文将详细介绍如何使用命令行来创建和管理MySQL数据库及数据表。

如何使用命令行在MySQL中创建数据库和表?  第1张

登录MySQL

我们需要通过命令行登录到MySQL,打开终端或命令提示符,输入以下命令:

mysql -u root -p

系统会提示你输入密码,输入正确的密码后即可进入MySQL命令行界面。

创建数据库

创建数据库的基本语法如下:

CREATE DATABASE 数据库名;

创建一个名为mydatabase的数据库:

CREATE DATABASE mydatabase;

如果你想指定字符集和排序规则,可以使用以下命令:

CREATE DATABASE mydatabase CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

使用数据库

在创建数据库后,需要选择要使用的数据库,使用以下命令:

USE 数据库名;

选择我们刚刚创建的mydatabase数据库:

USE mydatabase;

创建数据表

创建数据表的基本语法如下:

CREATE TABLE 表名 (
    列名1 数据类型 [约束条件],
    列名2 数据类型 [约束条件],
    ...
);

创建一个名为users的表,包含以下列:

id: 整数类型,自动递增,主键

username: 可变长字符串,最大长度50,不允许为空

email: 可变长字符串,最大长度100,不允许为空

birthdate: 日期类型

is_active: 布尔类型,默认值为TRUE

具体SQL命令如下:

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY COMMENT 'ID',
    username VARCHAR(50) NOT NULL COMMENT '用户名',
    email VARCHAR(100) NOT NULL COMMENT '邮箱',
    birthdate DATE COMMENT '生日',
    is_active BOOLEAN DEFAULT TRUE COMMENT '是否激活'
) COMMENT='用户表';

查看数据表结构

创建完数据表后,可以使用DESCRIBE命令查看表结构:

DESCRIBE users;

这将显示users表的所有列、数据类型、约束等信息。

插入数据

有了数据表之后,可以向表中插入数据,使用INSERT INTO语句实现:

INSERT INTO users (username, email, birthdate, is_active) VALUES ('john_doe', 'john@example.com', '1990-01-01', TRUE);

注意,由于id字段是自增的,所以在插入数据时不需要指定其值。

查询数据

插入数据后,可以使用SELECT语句查询数据:

SELECT * FROM users;

这将显示users表中的所有数据。

示例:创建多个表并插入数据

假设我们要创建一个学校管理系统,包含学生、课程和成绩三个表,以下是完整的SQL脚本:

-创建数据库
CREATE DATABASE school CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
USE school;
-创建学生表
CREATE TABLE t_student (
    s_id INT AUTO_INCREMENT PRIMARY KEY,
    s_name VARCHAR(50) NOT NULL,
    s_sex VARCHAR(2)
) COMMENT='学生表';
-创建课程表
CREATE TABLE t_course (
    course_id INT AUTO_INCREMENT PRIMARY KEY,
    course_name VARCHAR(50) NOT NULL
) COMMENT='课程表';
-创建成绩表
CREATE TABLE t_student_score (
    id INT AUTO_INCREMENT PRIMARY KEY,
    stu_id INT NOT NULL,
    course_id INT NOT NULL,
    score DECIMAL(5,2),
    FOREIGN KEY (stu_id) REFERENCES t_student(s_id),
    FOREIGN KEY (course_id) REFERENCES t_course(course_id)
) COMMENT='学生成绩表';
-插入数据到学生表
INSERT INTO t_student (s_name, s_sex) VALUES ('Alice', 'F'), ('Bob', 'M');
-插入数据到课程表
INSERT INTO t_course (course_name) VALUES ('Math'), ('English');
-插入数据到成绩表
INSERT INTO t_student_score (stu_id, course_id, score) VALUES (1, 1, 95.5), (2, 2, 88.0);

常见问题与解答(FAQs)

Q1: 如何删除一个数据库?

A1: 使用以下命令删除数据库:

DROP DATABASE 数据库名;

删除名为mydatabase的数据库:

DROP DATABASE mydatabase;

Q2: 如何在表中添加新列?

A2: 使用ALTER TABLE命令添加新列,向users表中添加一个phone列:

ALTER TABLE users ADD phone VARCHAR(20);

小编有话说

掌握MySQL的基本命令对于数据库管理至关重要,通过本文的介绍,希望读者能够熟练使用命令行创建和管理MySQL数据库及数据表,如果有任何疑问或建议,欢迎留言讨论。

0