Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php MySQL插入查询失败,数据太多_Php_Mysql - Fatal编程技术网

Php MySQL插入查询失败,数据太多

Php MySQL插入查询失败,数据太多,php,mysql,Php,Mysql,我尝试使用以下基本代码将大量数据插入MySQL数据库: $query = "INSERT INTO PublicNoticesTable (url, county, paperco, date, notice, id) VALUES " . $queryString; $result = mysqli_query($connect, $query); $queryString是预先生成的,包含以下格式的数千行信息: ('a','b','c'),('a','b','c') 这样,我可以在一个my

我尝试使用以下基本代码将大量数据插入MySQL数据库:

$query = "INSERT INTO PublicNoticesTable (url, county, paperco, date, notice, id) VALUES " . $queryString;
$result = mysqli_query($connect, $query);
$queryString
是预先生成的,包含以下格式的数千行信息:

('a','b','c'),('a','b','c')

这样,我可以在一个mysql调用中插入多行数据,并减少处理时间。我有能力限制进入
$queryString
的信息量,当信息量较少时,查询成功。耶!当我输入的信息太多时,查询就会失败。如果有人能为我提供解决方案,我将不胜感激。我用的是GoDaddy和PHPMyAdmin,如果这很重要的话


谢谢大家!

如果您试图使用
insert插入值。。。值
pattern那么您就有了
max\u allowed\u packet
的限制。当我输入了太多的信息时,查询失败了,那么为什么不现在调试
mysqli\u error($connect)

来自文档:

要优化插入速度,请将许多小操作组合到单个 大手术。理想情况下,您只需建立一个连接,即可发送数据 一次更新多个新行,并延迟所有索引更新和一致性 检查到底

MySQL客户端或mysqld服务器接收到大于
max\u allowed\u packet
字节的数据包,它发出数据包过大错误并关闭连接

尝试查看数据包的最大大小

show variables like 'max_allowed_packet';
默认情况下,SQL长度受1M限制,您可以更改
max_allowed_packet
参数支持更大的单次插入


如果您正试图使用
insert插入值。。。值
pattern那么您就有了
max\u allowed\u packet
的限制。当我输入了太多的信息时,查询失败了,那么为什么不现在调试
mysqli\u error($connect)

来自文档:

要优化插入速度,请将许多小操作组合到单个 大手术。理想情况下,您只需建立一个连接,即可发送数据 一次更新多个新行,并延迟所有索引更新和一致性 检查到底

MySQL客户端或mysqld服务器接收到大于
max\u allowed\u packet
字节的数据包,它发出数据包过大错误并关闭连接

尝试查看数据包的最大大小

show variables like 'max_allowed_packet';
默认情况下,SQL长度受1M限制,您可以更改
max_allowed_packet
参数支持更大的单次插入


您可以确保列的最大长度足以合并数据。如果数据很长(每列超过10000个字符),可以尝试使用blob

您可以确保列的最大长度足以合并数据。如果数据很长(每列超过10000个字符),可以尝试使用blob

当查询失败时,会出现什么错误?请显示失败的查询并显示错误消息,以便调试是否没有错误消息?如果有,我不知道如何检索它。我所知道的是,
$result
返回的结果至少是错误的,因为我们无法理解您所说的太多信息意味着什么。。我的意思是,只是一个带有硬编码值的示例查询如果返回false,那么您需要在查询中使用
mysqli\u error($connect)
,看看这是否会产生任何结果。当查询失败时,您会得到什么错误?请显示失败的查询,并显示错误消息以调试是否没有错误消息?如果有,我不知道如何检索它。我所知道的是,
$result
返回的结果至少是错误的,因为我们无法理解您所说的太多信息意味着什么。。我的意思是一个带有硬编码值的示例查询如果返回false,那么您需要在查询中使用
mysqli\u error($connect)
,看看这是否会产生任何结果。我将如何定位此“最大允许数据包”值?@Pixelknight1398请参见此处,我将如何定位此“最大允许数据包”值?@Pixelknight1398请参见此处和