MySQL 表创建全攻略:Navicat 图形化与 Xshell 命令行双模式实践

在数据库开发中,创建表是最基础的操作之一。本文将结合实际操作,详细介绍两种主流的表创建方式:Navicat 图形化界面和 Xshell 命令行,帮助你根据不同场景灵活选择。

一、Navicat 图形化创建表:直观高效的可视化操作

Navicat 提供了友好的图形界面,适合快速设计和修改表结构,尤其适合新手和本地开发场景。

1. 操作步骤

• 连接数据库:打开 Navicat,连接到你的 MySQL 服务器,选择目标数据库(如 students)。

• 新建表:右键点击"表" → 选择"新建表",或在顶部菜单栏选择"表"→"新建表",进入表设计器。

• 设计表结构:在设计器中逐行定义字段,包括字段名、数据类型、长度、注释等。

• 保存表:点击"保存",输入表名(如 students),确认后完成创建。

2.导入数据

• 点击导入,选择要导入的文件类型。

• 选择要导入的文件地址,选择相应的分隔符。

• 选择相应的数据行,添加目标字段。

• 一直点下一步,开始创建。

• 刷新后就可以看到创建后的表。

sql 复制代码
CREATE TABLE `students` (
  `stu_id` bigint(10) DEFAULT NULL COMMENT '学生学号',
  `stu_name` varchar(255) DEFAULT NULL COMMENT '学生姓名',
  `gender` varchar(255) DEFAULT NULL COMMENT '学生性别',
  `age` int(10) DEFAULT NULL COMMENT '学生年龄',
  `major` varchar(255) DEFAULT NULL COMMENT '学生专业',
  `clazz` varchar(255) DEFAULT NULL COMMENT '学生班级',
  `year` bigint(20) DEFAULT NULL COMMENT '入学年份'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

二、Xshell 命令行创建表:服务器环境的自动化首选

在服务器部署或自动化脚本中,命令行方式更高效。通过 Xshell 连接 Linux 服务器,进入 MySQL 命令行即可执行建表操作。

1. 操作步骤

• 连接服务器:打开 Xshell,连接到你的 Linux 服务器。

• 登录 MySQL:
mysql -u root -p
输入密码后,进入 MySQL 交互界面。

• 选择数据库:
USE students;

• 执行建表 SQL:直接输入建表语句,回车执行。

2. 示例 SQL(学生表)

• 创建表名

sql 复制代码
CREATE TABLE `students` (
  `stu_id` bigint(10) DEFAULT NULL COMMENT '学生学号',
  `stu_name` varchar(255) DEFAULT NULL COMMENT '学生姓名',
  `gender` varchar(255) DEFAULT NULL COMMENT '学生性别',
  `age` int(10) DEFAULT NULL COMMENT '学生年龄',
  `major` varchar(255) DEFAULT NULL COMMENT '学生专业',
  `clazz` varchar(255) DEFAULT NULL COMMENT '学生班级',
  `year` bigint(20) DEFAULT NULL COMMENT '入学年份'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

• 插入单条数据

sql 复制代码
insert into students values(20250101,'张三','男',20,'计算机科学与技术','计科2501',2025);

• 多行数据插入

sql 复制代码
insert into students(stu_id,stu_name,gender,age,major,clazz,year) values(20250101,'张三','男',20,'计算机科学与技术','计科2501',2025)
,(20250102,'李四','女',20,'计算机科学与技术','计科2501',2025)
,(20250103,'王五','男',19,'计算机科学与技术','计科2501',2025)
,(20250201,'赵六','女',20,'软件工程','软工2502',2025)
,(20250202,'孙七','男',20,'软件工程','软工2502',2025)
,(20250301,'周八','女',20,'大数据技术','大数据2501',2025)
,(20250302,'吴九','男',19,'大数据技术','大数据2501',2025)
,(20250401,'郑十','女',20,'人工智能','智能2501',2025)
,(20250104,'钱十','男',20,'计算机科学与技术','计科2501',2025)
,(20250203,'孙十','女',20,'软件工程','软工2502',2025);

• 如果数据太多,可以通过文件导入。

sql 复制代码
load data local infile '/root/data/students.txt' into table students fields terminated by ',';
3. 验证创建结果

SHOW TABLES;
若能看到 students、scores、subjects 等表名,说明创建成功。

4.数据导出(mysqldump 备份)
bash 复制代码
mysqldump -uroot -p123456 stu students > /root/data/students.sql

bash 复制代码
# 可以加到.bashrc中 
alias db_backup='mysqldump -uroot -p --single-transaction stu students > /root/data/mydb_$(date +%Y%m%d).sql.gz'

# 让别名永久生效
echo "alias db_backup='mysqldump -uroot -p --single-transaction stu students | gzip > /root/data/mydb_$(date +%Y%m%d).sql.gz'" >> ~/.barshrc
source ~/.bashrc

#执行备份测试
db_backup

三、两种方式对比与适用场景

|-------------|------------------|-------------------|--------------------|
| 方式 | 优点 | 缺点 | 适用场景 |
| Navicat 图形化 | 直观易用,拖拽设计,可视化预览 | 依赖图形界面,不适合自动化脚本 | 本地开发、快速设计表结构、教学演示 |
| Xshell 命令行 | 无界面依赖,可自动化,适合服务器 | 学习成本稍高,需记忆 SQL 语法 | 服务器部署、批量建表、自动化备份脚本 |

四、常用辅助命令

1.查看表的创建语句(DDL)
sql 复制代码
SHOW CREATE TABLE students;
2.查看当前数据库
sql 复制代码
SELECT database();
3. 限制查询结果数量
sql 复制代码
SELECT * FROM students LIMIT 10;

总结

无论是使用 Navicat 的图形化界面,还是在 Xshell 中通过命令行操作,核心都是掌握 SQL 建表语句。图形化方式直观高效,适合快速开发;命令行方式则更灵活,能满足服务器自动化需求。根据场景选择合适的方式,能让数据库管理工作事半功倍。

相关推荐
Nandeska2 小时前
15、基于MySQL的组复制
数据库·mysql
神梦流2 小时前
GE 引擎的非标准数据流处理:稀疏张量与自定义算子在图优化中的语义保持
linux·运维·服务器
AllData公司负责人2 小时前
AllData数据中台-数据同步平台【Seatunnel-Web】整库同步MySQL同步Doris能力演示
大数据·数据库·mysql·开源
.小墨迹3 小时前
apollo学习之借道超车的速度规划
linux·c++·学习·算法·ubuntu
Lsir10110_3 小时前
【Linux】中断 —— 操作系统的运行基石
linux·运维·嵌入式硬件
醇氧3 小时前
【docker】mysql 8 的健康检查(Health Check)
mysql·docker·容器
Sheffield3 小时前
command和shell模块到底区别在哪?
linux·云计算·ansible
历程里程碑3 小时前
Linux20 : IO
linux·c语言·开发语言·数据结构·c++·算法
郝学胜-神的一滴3 小时前
深入浅出:使用Linux系统函数构建高性能TCP服务器
linux·服务器·开发语言·网络·c++·tcp/ip·程序人生