Mehrere Einträge zur DB hinzufügen

Deutschsprachiges Forum für Diskussionen und Fragen zu MantisBT

Moderators: Developer, Contributor

Post Reply
bluescreenterror
Posts: 20
Joined: 16 Jan 2020, 11:19

Mehrere Einträge zur DB hinzufügen

Post by bluescreenterror »

Moin,

Folgendes Szenario:
ein Plugin baut bei der Installation eine Tabelle mit mehreren Werten auf die es aus bereits vorhandenen Daten berechnet. Jetzt möchte ich die Daten nicht einzeln in die DB schreiben sondern als ganzen Block/Transaction. Gibt es dazu eine Möglichkeit in Mantis?

Wenn ich Versuche das ganze mit
$t_query = "INSERT INTO $t_some_table ( val1, val2, val3, ) VALUES (" . db_param() . "," . db_param() . "," . db_param() . ")";
db_param() und db_query($query, array(array1, array2,array3));

Funktioniert das ganze nicht...

Deshalb:
1.) Ist es überhaupt möglich ? Oder muss ich jede Zeile einzeln in Mantis in die DB schubsen ?
2.) Wenn möglich, wie dann ? Falsche Methode bzw. Herangehensweise ?

Über einen Stupps in die richtige Richtung wäre ich dankbar, gerne auch einen Link zu einem Repo auf Github wo das ganze bereits implementiert ist ;)
Danke!
Mantis: 2.23.0
XAMPP: v.3.2.4
PHP Version: 7.1.33
Windows Server 2016
cas
Posts: 1586
Joined: 11 Mar 2006, 16:08
Contact:

Re: Mehrere Einträge zur DB hinzufügen

Post by cas »

Es könnte so aussehen:
INSERT INTO `some_table` (`id`, `url`, `site_name`, `site`, `query_terms`, `refering_anchortext`, `page_title`, `snippet`, `is_searchengine`) VALUES
(118221093, '(none)', '', '', '', '', '(not set)', '', 0),
(249406349, 'https://es.search.yahoo.com/', '', 'es.search.yahoo.com', '', '', '(not set)', '', 1),
(1112777553, '(none)', '', '', '', '', '(not set)', '', 0),
(1553904566, 'https://tr.search.yahoo.com/', '', 'tr.search.yahoo.com', '', '', '(not set)', '', 1),
(2285484871, 'https://www.google.nl/', '', 'www.google.nl', '', '', '(not set)', '', 1);
bluescreenterror
Posts: 20
Joined: 16 Jan 2020, 11:19

Re: Mehrere Einträge zur DB hinzufügen

Post by bluescreenterror »

Hi Cas,

Danke für deine Antwort, kann ich dem hinter Values einfach ein Array hinschmeißen und dann ist das eine Transaction ? Teste ich gleich mal :)
Mantis: 2.23.0
XAMPP: v.3.2.4
PHP Version: 7.1.33
Windows Server 2016
Post Reply