[英]PHP Max amount of inserts in one SQL query
我有一个非常简单的问题。 我在MySQL表中一次插入了很多记录。 它适用于大约2000条记录(实际上更多)。 但是说我要插入3000条记录,而不是做任何事情。
我正在通过AS3将包含所有记录的数组通过AMFPHP发送到一个简单的PHP脚本来解析和插入数组。
这是正常的,还是应该调查一下?
目前我正在将我的数组切换为2000条记录的部分内容,并发送几个AMFPHP请求而不是1个。
PHP的查询受“max_allowed_packet”配置选项的限制。 它定义了查询字符串的绝对长度限制(以字符为单位)。 请注意,这不仅仅是要插入的数据的总大小,而是整个查询字符串。 SQL命令,标点符号,空格等......
检查3000记录版本与2000版本的长度,然后获取服务器的数据包长度限制:
SHOW VARIABLES WHERE Variable_name LIKE '%max_allowed_packet%'
如果您的3000记录版本超过此限制,查询将无效地失败,因为它将在某个地方被切断
我会确保max_allowed_packet
大于PHP SQL查询。
http://dev.mysql.com/doc/refman/5.5/en/packet-too-large.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.