MySQL 表创建与数据导入导出

文章目录

  • 一、创建表
    • [1. 使用Navicat创建表](#1. 使用Navicat创建表)
    • [2. 使用命令行创建表](#2. 使用命令行创建表)
  • 二、导入数据
    • [1. 使用Navicat导入向导](#1. 使用Navicat导入向导)
    • [2. 插入单条数据](#2. 插入单条数据)
    • [3. 多行数据插入](#3. 多行数据插入)
    • [4. 从本地文件加载数据](#4. 从本地文件加载数据)
  • 三、导出数据
    • [1. 使用Navicat导出向导](#1. 使用Navicat导出向导)
    • [2. 使用命令行导出](#2. 使用命令行导出)

一、创建表

  • 创建表是数据库设计的第一步,可以通过可视化工具(如Navicat)或命令行来操作。

1. 使用Navicat创建表

  • 在Navicat中执行以下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;

2. 使用命令行创建表

  • 如果习惯使用命令行,可以通过以下语句创建成绩表与科目表:
sql 复制代码
CREATE TABLE `scores` (
  `stu_id` bigint(10) DEFAULT NULL COMMENT '学生学号',
  `subject_id` int(10) DEFAULT NULL COMMENT '科目编号',
  `score` int(10) DEFAULT NULL COMMENT '考试分数',
  `type` varchar(255) DEFAULT NULL COMMENT '考试类型'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
sql 复制代码
CREATE TABLE `subjects` (
  `subject_id` int(10) DEFAULT NULL COMMENT '科目编号',
  `subject_name` varchar(255) DEFAULT NULL COMMENT '科目名称',
  `credit` int(10) DEFAULT NULL COMMENT '学分',
  `semester` int(10) DEFAULT NULL COMMENT '授课学期'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

二、导入数据

  • 数据导入有多种方式,包括使用导入向导、插入语句或直接加载本地文件。

1. 使用Navicat导入向导

  • Navicat提供了直观的导入向导,支持多种格式(如CSV、Excel等)的数据导入,操作简单快捷。

2. 插入单条数据

  • 使用INSERT语句插入一条学生记录:
sql 复制代码
insert into students values(20250101,'张三','男',20,'计算机科学与技术','计科2501',2025);

3. 多行数据插入

  • 一次性插入多条数据,提高操作效率:
sql 复制代码
insert into students(id,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',20)
,(20250203,'孙十','女',20,'软件工程','软工2502',2025);

4. 从本地文件加载数据

  • 使用LOAD DATA语句从文本文件导入数据:
sql 复制代码
load data local infile 'D:\\Desktop\\mysqlmd\\data\\students.txt' into table students fields terminated by ',';

三、导出数据

  • 数据导出同样支持可视化工具与命令行两种方式。

1. 使用Navicat导出向导

  • Navicat导出向导支持将表数据导出为SQL、CSV、Excel等格式,操作便捷。

2. 使用命令行导出

  • 通过mysqldump命令可将指定表导出为SQL文件:
sql 复制代码
# 不建议加密码,不安全
mysqldump -uroot -p stu students > /root/data/students.sql
相关推荐
wudl55663 分钟前
doris mcp配置使用
mysql·database
『六哥』12 分钟前
MySQL 版本安装教程
数据库·mysql
AC赳赳老秦23 分钟前
工业互联网赋能智造:DeepSeek解析产线传感器数据驱动质量管控新范式
前端·数据库·人工智能·zookeeper·json·flume·deepseek
小北方城市网1 小时前
第 10 课:Python 全体系实战整合与职业进阶指南(完结篇)
大数据·开发语言·数据库·python
luoluoal1 小时前
基于python的文件销毁工具(源码+文档)
python·mysql·django·毕业设计·源码
韩立学长1 小时前
基于Springboot建筑物保护可视化系统rk6tni53(程序、源码、数据库、调试部署方案及开发环境)系统界面展示及获取方式置于文档末尾,可供参考。
数据库·spring boot·后端
量化风云1 小时前
2026量化新基建(二) - sqlite 与 sqlite-utils
数据库·python·sqlite·量化交易·量化交易课程
Element_南笙1 小时前
BUG:ModuleNotFoundError: No module named ‘milvus_lite‘
java·服务器·数据库
code tsunami1 小时前
如何将 Helium 与 CapSolver 集成,实现无缝 CAPTCHA 自动化解决
运维·数据库·人工智能·爬虫·python·自动化
ELI_He9992 小时前
SeaTunnel 编译
大数据·mysql·elasticsearch·database·flume