Inhaltsverzeichnis
回复讨论(解决方案)
Heim Backend-Entwicklung PHP-Tutorial php mysql insert into while 意外终止

php mysql insert into while 意外终止

Jun 23, 2016 pm 02:12 PM

$result = mysql_query("SELECT uid , pid , cate                       FROM upcm");while($rows = mysql_fetch_row($result)){$arry = explode($sepr,$rows[2],5);$query = "INSERT INTO upcn(uid,pid,cate1,cate2,cate3,cate4,cate5)           VALUES('$rows[0]','$rows[1]','$arry[0]','$arry[1]','$arry[2]','$arry[3]','$arry[4]')";$result1 = mysql_query($query);if(!$result1){echo "fail<br>";}}
Nach dem Login kopieren


mysql_fetch_row($result)获取查询的结果,逐条处理,处理后写进一个新的表里面,但是每次执行while循环总是还没执行完程序就终止了,没有处理完数据,把insert into 换成printf(“**”);代替插入操作,会将程序正确执行完毕,而且每次运行程序插入的条数不一,有时多有时少,请问大侠们什么情况这是,苦恼啊..


回复讨论(解决方案)

PS:处理的数据是中文,有19万条数据,大约11M,服务器用的apache,是不是服务器负担重才终止的?

。。
像你这种问题,肯定是要在cli模式下跑单条sql处理才靠谱啊!!!
至不济也要先把数据导出,然后导入,而不是这样做啊
参见select into

我能说是分批/次处理
详解请看楼下说法……

#2楼说的写入文件再读取,我刚刚试过了,还是不行,insert 1K条后会同样不知原因地终止掉了。
看这处理能力(1000条左右)我如果要分批处理的话(#3楼说的方法)那要分多少次啊?我有20W条的记录啊。。

你就不会写成单条insert么
1k条insert当然会拖累mysql啊
单条insert插入多个数据会吧

用存储过程试试会不会好些

有几个问题需要注意排除:
1、php超时
2、web服务器超时
3、特殊字符未转义
4、count($array) 
算法上可考虑:
每千条组装成多个VALUE的INSERT语句后插入
以分页方式逐段插入

直接使用SQL指令完成,而不经php转手
$sql = INSERT INTO upcn(uid,pid,cate1,cate2,cate3,cate4,cate5)
  SELECT uid , pid 
    , substring_index(substring_index(cate,'$sepr',1),'$sepr',-1)
    , substring_index(substring_index(cate,'$sepr',2),'$sepr',-1)
    , substring_index(substring_index(cate,'$sepr',3),'$sepr',-1)
    , substring_index(substring_index(cate,'$sepr',4),'$sepr',-1)
    , substring_index(substring_index(cate,'$sepr',5),'$sepr',-1)
    FROM upcm
SQL;

你就不会写成单条insert么
1k条insert当然会拖累mysql啊
单条insert插入多个数据会吧
insert ..values(),(),()...  是这样的吗?

用存储过程试试会不会好些
存储过程是什么意思?还没学习过。

有几个问题需要注意排除:
1、php超时
2、web服务器超时
3、特殊字符未转义
4、count($array) 
算法上可考虑:
每千条组装成多个VALUE的INSERT语句后插入
以分页方式逐段插入

直接使用SQL指令完成,而不经php转手
$sql = INSERT INTO upcn(uid,pid,cate1,cate2,cate3,c……
这位是大神呐!太强了!这个方法很管用,9.15S就处理完了。

有几个问题需要注意排除:
1、php超时
2、web服务器超时
3、特殊字符未转义
4、count($array) 
算法上可考虑:
每千条组装成多个VALUE的INSERT语句后插入
以分页方式逐段插入

直接使用SQL指令完成,而不经php转手
$sql = INSERT INTO upcn(uid,pid,cate1,cate2,cate3,cate4,cate5)
  SELECT uid , pid 
    , substring_index(substring_index(cate,'$sepr',1),'$sepr',-1)
    , substring_index(substring_index(cate,'$sepr',2),'$sepr',-1)
    , substring_index(substring_index(cate,'$sepr',3),'$sepr',-1)
    , substring_index(substring_index(cate,'$sepr',4),'$sepr',-1)
    , substring_index(substring_index(cate,'$sepr',5),'$sepr',-1)
    FROM upcm
SQL;

请问大神,这个直接使用SQL指令完成,而不经php转手是什么意思?
是不是利用PHP建立一个SQL文件,然后让sql执行?

我也遇到同样问题,还没解决...烦恼中...

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Arbeiten mit Flash -Sitzungsdaten in Laravel Arbeiten mit Flash -Sitzungsdaten in Laravel Mar 12, 2025 pm 05:08 PM

Laravel vereinfacht die Behandlung von temporären Sitzungsdaten mithilfe seiner intuitiven Flash -Methoden. Dies ist perfekt zum Anzeigen von kurzen Nachrichten, Warnungen oder Benachrichtigungen in Ihrer Anwendung. Die Daten bestehen nur für die nachfolgende Anfrage standardmäßig: $ Anfrage-

Curl in PHP: So verwenden Sie die PHP -Curl -Erweiterung in REST -APIs Curl in PHP: So verwenden Sie die PHP -Curl -Erweiterung in REST -APIs Mar 14, 2025 am 11:42 AM

Die PHP Client -URL -Erweiterung (CURL) ist ein leistungsstarkes Tool für Entwickler, das eine nahtlose Interaktion mit Remote -Servern und REST -APIs ermöglicht. Durch die Nutzung von Libcurl, einer angesehenen Bibliothek mit Multi-Protokoll-Dateien, erleichtert PHP Curl effiziente Execu

Vereinfachte HTTP -Reaktion verspottet in Laravel -Tests Vereinfachte HTTP -Reaktion verspottet in Laravel -Tests Mar 12, 2025 pm 05:09 PM

Laravel bietet eine kurze HTTP -Antwortsimulationssyntax und vereinfache HTTP -Interaktionstests. Dieser Ansatz reduziert die Code -Redundanz erheblich, während Ihre Testsimulation intuitiver wird. Die grundlegende Implementierung bietet eine Vielzahl von Verknüpfungen zum Antworttyp: Verwenden Sie Illuminate \ Support \ facades \ http; Http :: fake ([ 'Google.com' => 'Hallo Welt',, 'github.com' => ['foo' => 'bar'], 'Forge.laravel.com' =>

12 Beste PHP -Chat -Skripte auf Codecanyon 12 Beste PHP -Chat -Skripte auf Codecanyon Mar 13, 2025 pm 12:08 PM

Möchten Sie den dringlichsten Problemen Ihrer Kunden in Echtzeit und Sofortlösungen anbieten? Mit Live-Chat können Sie Echtzeitgespräche mit Kunden führen und ihre Probleme sofort lösen. Sie ermöglichen es Ihnen, Ihrem Brauch einen schnelleren Service zu bieten

Erklären Sie das Konzept der späten statischen Bindung in PHP. Erklären Sie das Konzept der späten statischen Bindung in PHP. Mar 21, 2025 pm 01:33 PM

In Artikel wird die in PHP 5.3 eingeführte LSB -Bindung (LSB) erörtert, die die Laufzeitauflösung der statischen Methode ermöglicht, um eine flexiblere Vererbung zu erfordern. Die praktischen Anwendungen und potenziellen Perfo von LSB

Anpassung/Erweiterung von Frameworks: So fügen Sie benutzerdefinierte Funktionen hinzu. Anpassung/Erweiterung von Frameworks: So fügen Sie benutzerdefinierte Funktionen hinzu. Mar 28, 2025 pm 05:12 PM

In dem Artikel werden Frameworks hinzugefügt, das sich auf das Verständnis der Architektur, das Identifizieren von Erweiterungspunkten und Best Practices für die Integration und Debuggierung hinzufügen.

Rahmensicherheitsmerkmale: Schutz vor Schwachstellen. Rahmensicherheitsmerkmale: Schutz vor Schwachstellen. Mar 28, 2025 pm 05:11 PM

In Artikel werden wichtige Sicherheitsfunktionen in Frameworks erörtert, um vor Schwachstellen zu schützen, einschließlich Eingabevalidierung, Authentifizierung und regelmäßigen Aktualisierungen.

See all articles