Verwenden Sie die Listendatenstruktur von Redis, um SQL-Anweisungen stapelweise auszuführen

WBOY
Freigeben: 2016-09-01 00:20:16
Original
2182 Leute haben es durchsucht

Mittlerweile gibt es mehr als 3.000 solcher Datensätze in der Datenbank. Jeder Datensatz enthält den chinesischen Namen der Region und den englischen Namen der Region (wie unten gezeigt)

Verwenden Sie die Listendatenstruktur von Redis, um SQL-Anweisungen stapelweise auszuführen

Ich möchte jetzt die Redis-Warteschlangen lpush und rpop verwenden, um Batch-Updates zu implementieren. Ich habe die SQL-Anweisung bereits geschrieben (wie unten gezeigt)

Verwenden Sie die Listendatenstruktur von Redis, um SQL-Anweisungen stapelweise auszuführen

Ich habe den Code so geschrieben (wie unten gezeigt). Ich habe mehr als 3.000 SQL-Anweisungen in einer Liste gespeichert (lpush) und mich darauf vorbereitet, sie einzeln herauszunehmen und auszuführen (rpop) und sie einzeln auszuführen Ich weiß nicht, wie ich sie als nächstes schreiben soll. Jetzt habe ich auch den Wert der Liste in der CLI eingefügt verstümmelt sein (wie unten gezeigt). Ich habe --raw hinzugefügt, als ich die CLI gestartet habe

Verwenden Sie die Listendatenstruktur von Redis, um SQL-Anweisungen stapelweise auszuführen

Verwenden Sie die Listendatenstruktur von Redis, um SQL-Anweisungen stapelweise auszuführen

Vielen Dank an alle~

Antwortinhalt:

Mittlerweile gibt es mehr als 3.000 solcher Datensätze in der Datenbank. Jeder Datensatz enthält den chinesischen Namen der Region und den englischen Namen der Region (wie unten gezeigt)

Verwenden Sie die Listendatenstruktur von Redis, um SQL-Anweisungen stapelweise auszuführen

Ich möchte jetzt die Redis-Warteschlangen lpush und rpop verwenden, um Batch-Updates zu implementieren. Ich habe die SQL-Anweisung bereits geschrieben (wie unten gezeigt)

Verwenden Sie die Listendatenstruktur von Redis, um SQL-Anweisungen stapelweise auszuführen

Ich habe den Code so geschrieben (wie unten gezeigt), ich habe mehr als 3.000 SQL-Anweisungen in einer Liste gespeichert (lpush) und mich darauf vorbereitet, sie einzeln herauszunehmen und auszuführen (rpop) und sie einzeln auszuführen Ich weiß nicht, wie ich sie als nächstes schreiben soll. Jetzt habe ich auch den Wert der Liste unter cli eingefügt verstümmelt (wie unten gezeigt). Ich habe beim Starten der CLI „--raw“ hinzugefügt

Verwenden Sie die Listendatenstruktur von Redis, um SQL-Anweisungen stapelweise auszuführen

Verwenden Sie die Listendatenstruktur von Redis, um SQL-Anweisungen stapelweise auszuführenVielen Dank an alle~

Danke für die Einladung

Tatsächlich brauchen Sie kein Redis. Sie können das gesamte SQL in einer Datei ablegen, jedes einzelne lesen und jedes einzelne ausführen?


<code class="php">function getSql()
{
    $fp = fopen('sql.txt', 'r');
    while (!feof($fp)) {
        yield fgets($fp);
    }
}

foreach (getSql() as $sql) {
    executeSql($sql);
}

function executeSql()
{
    //执行语句
}</code>
Nach dem Login kopieren

Dies kann mit nur einer SQL-Anweisung und minimalem Overhead durchgeführt werden (eine Datenbankverbindung, die Leistung ist ähnlich wie beim Batch-Einfügen in Daten).

<code>insert into base_region(region_name, en_name) values('中国','Zhongguo'), ('北京', 'Beijing'),...,('上海', 'Shanghai') on duplicate key update en_name = values(en_name);</code>
Nach dem Login kopieren

Zwei Punkte müssen beachtet werden:

    Der Wert von () in value(),(),(),() muss mithilfe einer for-Schleife gespleißt werden
  1. region_name muss ein eindeutiger Index sein. Sie können diesem Feld vorübergehend einen eindeutigen Index hinzufügen und ihn dann
  2. löschen, nachdem die SQL ausgeführt wurde.

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!