phpmyadmin 一次只导入 48 条记录

Posted

技术标签:

【中文标题】phpmyadmin 一次只导入 48 条记录【英文标题】:phpmyadmin only importing 48 records at a time 【发布时间】:2018-11-02 22:39:33 【问题描述】:

我正在使用 phpmyadmin 和导入功能将 .csv 文件导入 mysql 数据库。 csv 文件大小为 118K。每次我尝试导入文件时,数据库都会接受 48 条记录,然后停止。错误是“第 1306 行的 CSV 输入中的列数无效”。 (或任何行)。当我看线时,它没有任何问题。我切断了前 48 条记录,将剩余记录制作为 csv 文件,然后重试。同样,程序在 48 条记录后停止。我正在使用 WAMPserver64。

upload_max_filesize = 256M
post_max_size = 256M
memory_limit = 128M
max_input_time = 300
max_execution_time = 1200

每次更改 php 设置后,我都会重新启动服务。

有人对如何解决这个问题有任何意见吗?我还剩下 2,402 条记录,我真的不想一次输入 48 条记录。非常感谢!

第 1306 行 CSV 输入中的列计数无效。INSERT INTO hospital_addresses VALUES('114008'、'COASTAL HARBOR TREATMENT CENTER'、'1150 CORNELL AVE'、'SAVANNAH'、'GA'、'31406')INSERT INTO hospital_addresses值('114010'、'亚特兰大 PEACHFORD 行为健康系统'、'2151 PEACHFORD ROAD'、'ATLANTA'、'GA'、'30338')

以下是实际的数据行:

114008,COASTAL HARBOR TREATMENT CENTER,1150 CORNELL AVE,SAVANNAH,GA,31406 114010,PEACHFORD BEHAVIORAL HEALTH SYSTEM OF ATLANTA,2151 PEACHFORD ROAD,ATLANTA,GA,30338

【问题讨论】:

你能分享第 1305 行和第 1306 行吗?...可能第 1306 行中的值有一个额外的冒号或缺少一个冒号。 @esdebon:当然 - 第 1306 行的 CSV 输入中的列数无效。插入 hospital_addresses 值('114008'、'COASTAL HARBOR TREATMENT CENTER'、'1150 CORNELL AVE'、'SAVANNAH' , 'GA', '31406')插入hospital_addresses 值 ('114010', '亚特兰大 PEACHFORD 行为健康系统', '2151 PEACHFORD ROAD', '亚特兰大', 'GA', '30338') 这里是实际的数据行:114008,COASTAL HARBOR TREATMENT CENTER,1150 CORNELL AVE,SAVANNAH,GA,31406 114010,PEACHFORD BEHAVIORAL HEALTH SYSTEM OF ATLANTA,2151 PEACHFORD ROAD,ATLANTA,GA,30338 可能在每个插入中添加字段名称(在记事本中替换) INSERT INTO hospital_addresses (fieldName1, fieldName2, fieldName3, fieldName4, fieldName5, fieldName6) VALUES ('114008', 'COASTAL HARBOR TREATMENT CENTER ', '康奈尔大道 1150 号', '萨凡纳', 'GA', '31406') 我不能这样做——这是导入功能的工作方式。我想我可以编写一个 php 程序来执行此操作,但实际上,导入应该可以工作。 【参考方案1】:

您没有用分号分隔 2 个 SQL 语句,因此它认为它的 1 个语句具有错误的列数。

应该是:

INSERT INTO hospital_addresses VALUES ('114008', 'COASTAL HARBOR TREATMENT CENTER', '1150 CORNELL AVE', 'SAVANNAH', 'GA', '31406');
INSERT INTO hospital_addresses VALUES ('114010', 'PEACHFORD BEHAVIORAL HEALTH SYSTEM OF ATLANTA', '2151 PEACHFORD ROAD', 'ATLANTA', 'GA', '30338');

您的 csv 文件中的两行数据都在 1 行中吗?您粘贴的原始数据意味着它们位于 1 csv 行中。如果是这样,请将第 2 行数据放到 csv 的新行中,然后尝试再次导入。

【讨论】:

它们在不同的行上。出于某种原因,该程序认为它们是一排。但即使我手动休息,同样的事情也会发生。 我认为我需要使用“CSV using LOAD DATA”而不是“CSV”格式。

以上是关于phpmyadmin 一次只导入 48 条记录的主要内容,如果未能解决你的问题,请参考以下文章

导入一个 json 文件,但一次只使用一行信息

phpMyAdmin 一次为多个表“转储一些行”

软硬件调试九法:第五条规则 一次只改一个地方

使用 phpmyadmin 导入表需要很长时间

导入的记录在 mySQL 中不可见

Phpmyadmin - 将新列导入现有记录