数据库中的表导入csv文件时,出现此类报错如何解决

报错类型:

第一种:

由于secure-file-priv引起的报错
由于secure-file-priv引起的报错.png

第二种:

由于插入数据不同而引起的报错
由于插入数据不同而引起的报错.png

解决步骤:

一、查看数据库

可以使用http://localhost/phpmyadmin/,输入账户名:root,密码,就可以登录自己的数据库。(localhost后面有无端口号,取决于你当时下载appach是否有更改端口号,若无更改则后面无需添加端口号)
下面就是我新建的数据库:school
数据库.png

二、查看表

school数据库里面有两个表:class表和stu表;class表里面有数据,stu表里面无数据。
如果要通过命令行查看表里的数据,命令是:select * from 表名
class表.png
stu表.png

三、向stu表里面导入csv

(1)将表另存为另存为csv(逗号分隔)的格式

下图是我需要导入stu表里面的数据
需要导入stu表里面的数据.png
首先将表另存为另存为csv(逗号分隔)的格式
另存为csv(逗号分隔).png

(2)用记事本打开此表,另存为编码为utf-8

用记事本打开我们刚才保存的“学生表.csv”文件
学生表.csv.png
检查数据有没有错误,若无错误,将此数据另存为编码为utf-8
另存为编码为utf-8.png

(3)向stu表导入学生表.csv

第一步:选择我们刚才保存的“学生表.csv”文件
第二步:选择格式“CSV using LOAD DATA”

第三步:字段分隔符:,(一定要是英文状态下的“,”,不能是中文状态下的“,”)

第四步:选择“执行”
导入步骤.png

下面就是最重要的步骤:
第一个错误:secure-file-priv

这时候导入就会报错
报错.png
原因是因为不兼容,–secure-file-priv这一选项导致表导入时无法执行此语句
解决办法:
我们安装好的Appserv,进入MySQL文件夹,找到my.ini
my.ini所在位置.png

用笔记本打开my.ini,根据报错提示,找到secure-file-priv这一行
找到secure-file-priv.png

这时候将这一行修改为:secure-file-priv=""
保存后,一定要重启数据库,否则此修改不生效!!

找到任务管理器,服务,找到mysql,右击,重新启动
mysql.png

第二个错误:数据不同

这时候重复上面导入“学生表.csv”文件的步骤
这时候导入就会报错
报错.png
原因是我的class表导入的stuclass数据和stu表导入的stuclass数据不一样,所以导致导入“学生表.csv”文件失败。(class表导入的stuclass数据:计算机应用技术3-3班;stu表导入的stuclass数据:计算机应用3-3班)
class表导入的stuclass数据:计算机应用技术3-3班.png
stu表导入的stuclass数据:计算机应用3-3班.png

这时候选择修改class表导入的stuclass数据或者是stu表导入的stuclass数据都可以
我选择的是修改stu表导入的stuclass数据
stu表导入的stuclass数据.png

最后,再次重复上面导入“学生表.csv”文件的步骤
导入“学生表.csv”文件成功
成功导入.png
结果:
成功的界面.png
转载:https://www.jianshu.com/p/d49dd6ba9d1c

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值