【环境搭建】构建MySQL练习数据库

为了更好的学习MySQL,实战是巩固和学习的最好途径,所以我们需要构建一个MySQL练习数据库。从网络上下载了美国某电商数据集,其包含以下信息:

  • 引用表。共三个引用表,其中两张表包含人口统计信息(美国人口统计局2000年的统计数据),另一张表包含关于日期的日历信息。
  • Subscribers数据集,用于描述移动电话公司的客户子集。
  • Purchases数据集,用于描述客户购买模式的数据集。

这些数据集的实体-关系图表(ER图)如下:

下面我们就开始构建MySQL练习数据库吧。


1. 创建数据库

打开Navicat,连接本地MySQL,新建数据库。填写数据库名,选择字符集和排序规则。如下图所示:

  • 字符集一般选择 utf-8或者gbk。
  • 排序规则的选择需要注意的是,utf8_general_ci、utf8_general_cs、utf8_bin的区别,ci全称为case insensitive,意思是大小写不敏感,cs区分大小写,bin是以二进制数据存储,且区分大小写。如果要求数据库不区分大小写,则需要选择ci结尾的。

2. 创建数据表

因为下载的数据集均为txt文档,故需要将这些数据集导入数据库中。

在创建好的数据库下。右键点击表,选择导入向导…,进入导入向导界面:


1)选择相应的文件格式,点击下一步。

2)选择数据源和编码格式,点击下一步。

3)选择字段分隔符,点击下一步。

4)自定义选项,如数据是从第几行开始,到第几行结束,日期的格式等等。点击下一步。

5)预览数据字段,对数据类型进行更改。点击下一步。

6)选择导入模式。点击下一步。

7)点击开始即可完成数据的导入工作

上面七个步骤即为使用Navicat导入txt文档的过程,当然除了txt文档还有其他类型的文档(如csv、excel、json等)可导入数据表中,其步骤也大同小异。

剩余的8个txt文档同样可通过Navicat进行导入。

当然,除了使用Navicat导入外,还可以使用以下sql语句案例进行导入。

-- 使用sqltest数据库
USE sqltest;
-- 如果数据表Campaigns存在,则先删除
DROP TABLE IF EXISTS Campaigns;
-- 创建Campaigns数据表
CREATE TABLE Campaigns (
    CampaignId int NOT NULL PRIMARY KEY,
    CampaignName varchar(50) NOT NULL,
    Channel varchar(50) NOT NULL,
    Discount int NOT NULL,
    FreeShppingFlag char(1) NOT NULL
) ;
-- 本地导入txt文档
LOAD DATA LOCAL INFILE 'E:\\Folder\\SQLTest\\testdata\\campaigns.txt' IGNORE INTO TABLE Campaigns  
-- FIELDS TERMINATED BY表示字段分隔符
FIELDS TERMINATED BY '      ' 
-- LINES TERMINATED BY 表示行分隔符
LINES TERMINATED BY '\n'
-- IGNORE 1 LINES表示忽略第一行进行导入
IGNORE 1 LINES ;

至此,所有的数据集已导入到MySQL中,接下来,我们就可以使用这些数据集来进行实战了。

你可能感兴趣的:(【环境搭建】构建MySQL练习数据库)