如何使用命令行在MySQL中创建数据库和表?
- 行业动态
- 2025-01-02
- 3
创建MySQL数据库表的命令是: CREATE TABLE table_name (column1 datatype, column2 datatype, ...);。
在MySQL中,创建数据库和数据表是进行数据库管理的基础操作,本文将详细介绍如何使用命令行来创建和管理MySQL数据库及数据表。
登录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数据库及数据表,如果有任何疑问或建议,欢迎留言讨论。
本站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本站,有问题联系侵删!
本文链接:http://www.xixizhuji.com/fuzhu/380492.html