数据库系统概论实验准备

记录自己数据库实验的数据准备问题
因为实验的数据为gbk的文件,而在mysql中导入gbk中文一直有问题,最终使用utf-8的编码格式解决问题,希望能够解决一部分人的问题

数据包下载
因为原数据为gbk,我将其改为了utf-8,所以资源是utf-8的编码
首先创建数据库

CREATE DATABASE sales DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

然后创建表

CREATE TABLE region(
	regionkey INT PRIMARY KEY,
	name CHAR(25),
	comment VARCHAR(150)
);
CREATE TABLE nation(
	nationkey INT PRIMARY KEY,
	name CHAR(25),
	regionkey INT,
	comment VARCHAR(150),
	FOREIGN KEY(regionkey) REFERENCES region(regionkey)
);
CREATE TABLE supplier(
	suppkey INT PRIMARY KEY,
	name CHAR(100),
	address VARCHAR(100),
	nationkey INT,
	phone CHAR(30),
	acctbal NUMERIC(12,2),
	comment VARCHAR(100),
	FOREIGN KEY(nationkey) REFERENCES nation(nationkey)
);
CREATE TABLE part(
	partkey INT PRIMARY KEY,
	name VARCHAR(100),
	mfgr CHAR(50),
	brand CHAR(50),
	type VARCHAR(25),
	size INT,
	container CHAR(10),
	retailprice NUMERIC(8,2),
	comment VARCHAR(20)
);
CREATE TABLE partsupp(
	partkey INT,
	suppkey INT,
	availqty INT,
	supplycost NUMERIC(10,2),
	comment VARCHAR(200),
	PRIMARY KEY(partkey,suppkey),
	FOREIGN KEY(partkey) REFERENCES part(partkey),
	FOREIGN KEY(suppkey) REFERENCES supplier(suppkey)
);
CREATE TABLE customer(
	custkey INT PRIMARY KEY,
	name VARCHAR(25),
	address VARCHAR(40),
	nationkey INT,
	phone CHAR(30),
	acctbal NUMERIC(12,2),
	mktsegment CHAR(10),
	comment VARCHAR(100),
	FOREIGN KEY(nationkey) REFERENCES nation(nationkey)
);
CREATE TABLE orders(
	orderkey INT PRIMARY KEY,
	custkey INT,
	orderstatus CHAR(1),
	totalprice NUMERIC(10,2),
	orderdate DATE,
	orderpriority CHAR(15),
	clerk CHAR(16),
	shippriority CHAR(1),
	comment VARCHAR(60),
	FOREIGN KEY(custkey) REFERENCES customer(custkey)
);
CREATE TABLE lineitem(
	orderkey INT,
	partkey INT,
	suppkey INT,
	linenumber INT,
	quantity INT,
	extendedprice NUMERIC(8,2),
	discount NUMERIC(3,2),
	tax NUMERIC(3,2),
	returnflag CHAR(1),
	linestatus CHAR(1),
	shipdate DATE,
	commitdate DATE,
	receiptdate DATE,
	shipinstruct CHAR(25),
	shipmode CHAR(10),
	comment VARCHAR(40),
	PRIMARY KEY(orderkey,linenumber),
	FOREIGN KEY(partkey,suppkey) REFERENCES partsupp(partkey,suppkey)
);

然后导入数据,可以使用navicate,这个软件强烈推荐
创建后,要按创建的顺序导入数据, 按region,nation,supplier的顺序

在这里插入图片描述
点击csv
在这里插入图片描述
选择的数据和表相同,这里使用utf-8
![在这里插入图片描述](https://img-blog.csdnimg.cn/a612f663aa684f05af7d3f00d3dcda02.png
然后就一直下一步,导入月份有错误,在这里改为年月日
在这里插入图片描述
然后就可以点开始导入数据,最终数据都成功导入

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值