Jak wykonać zbiorcze wstawianie do MySQL, używając czegoś takiego jak https://github.com/felixge/node-mysql
123
Jak wykonać zbiorcze wstawianie do MySQL, używając czegoś takiego jak https://github.com/felixge/node-mysql
Odpowiedzi:
Wstawianie zbiorcze jest możliwe przy użyciu tablicy zagnieżdżonej, zobacz stronę github
Po prostu wstawiasz zagnieżdżoną tablicę elementów.
Przykład podano tutaj
Uwaga:
values
to tablica tablic opakowana w tablicęIstnieje również zupełnie inny pakiet node-msql do wstawiania zbiorczego
źródło
conn.execute()
użycie przygotowanych wyciągów? Jeśli nie, czy można wykorzystać przygotowane wyciągi podczas wstawiania? Dzięki.@ Ragnar123 odpowiedź jest poprawna, ale widzę wiele osób mówiących w komentarzach, że to nie działa. Miałem ten sam problem i wygląda na to, że musisz owinąć swoją tablicę w
[]
ten sposób:Musi zostać przekazana jak
[pars]
do metody.źródło
?
zamiast??
uzyskania prawidłowego grupowania.Rozglądałem się za odpowiedzią na temat zbiorczego wstawiania obiektów.
Odpowiedź udzielona przez Ragnar123 doprowadziła mnie do wykonania tej funkcji:
Mam nadzieję, że to pomoże!
źródło
Natknąłem się na to dzisiaj ( mysql 2.16.0) i pomyślałem, że udostępnię moje rozwiązanie:
źródło
Wszystkie rekwizyty dla Ragnara123 za jego odpowiedź.
Chciałem go tylko rozszerzyć po pytaniu zadanym przez Josha Haringtona, aby porozmawiać o włożonych identyfikatorach.
Będą one sekwencyjne. Zobacz tę odpowiedź: Czy wielorzędowe wstawianie MySQL przechwytuje sekwencyjne identyfikatory autoinkrementacji?
Dlatego możesz po prostu to zrobić (zwróć uwagę, co zrobiłem z result.insertId):
(Wyciągnąłem wartości z tablicy obiektów, które nazwałem persystentObjects.)
Mam nadzieję że to pomoże.
źródło
To jest szybkie „kopiowanie i wklejanie surowe” wycięte w celu przekazania kolumny pliku w mysql z node.js> = 11
250 tys. Rzędów w kilka sekund
źródło
?
poVALUES
, bez żadnych nawiasów. W ten sposób tablice tablic kolumn mogą być automatycznie przetwarzane w zbiorczych wstawieniach. Użyto go do analizy setek megabajtów dzienników dostępu w MySQL.W przypadku, gdy jest to potrzebne, oto jak rozwiązaliśmy wstawianie tablicy
żądanie pochodzi od listonosza (będziesz patrzeć na „gości”)
I jak napisaliśmy scenariusz
źródło
Jeśli
Ragnar
odpowiedź nie działa dla Ciebie. Oto prawdopodobnie dlaczego (na podstawie mojego doświadczenia) -Nie korzystałem z
node-mysql
pakietu, jak pokazano na moimRagnar
. Używałemmysql
pakietu. Są różne (jeśli nie zauważyłeś - tak jak ja). Ale nie jestem pewien, czy ma to coś wspólnego z?
niedziałającymmysql
pakietem , ponieważ wydawało się, że działa dla wielu osób korzystających z pakietu.Spróbuj użyć zmiennej zamiast
?
Poniższe działały dla mnie -
Mam nadzieję, że to komuś pomoże.
źródło
Kilka rzeczy, o których chciałbym wspomnieć, to to, że używam pakietu mysql do nawiązywania połączenia z moją bazą danych, a to, co zobaczyłeś poniżej, to działający kod i napisany do wstawiania zapytania zbiorczego.
źródło
Miałem podobny problem. Po prostu wstawiał jeden z listy tablic. Zadziałało po wprowadzeniu poniższych zmian.
Mam nadzieję że to pomoże. Używam mysql npm.
źródło
Wstawianie zbiorcze w Node.js można wykonać za pomocą poniższego kodu. Poleciłem wiele blogów, aby uzyskać tę pracę.
proszę odnieść się również do tego łącza. https://www.technicalkeeda.com/nodejs-tutorials/insert-multiple-records-into-mysql-using-nodejs
Działający kod.
Mam nadzieję, że to ci pomoże.
źródło