Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Update wielu wierszy
imbabo
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 26.03.2011

Ostrzeżenie: (0%)
-----


Witam , mam pytanie.
Czy istnieje konstrukcja zapytania UPDATE , podobna do konstrukcji zapytania INSERT ?
Chodzi mi dokładnie o coś takiego:
  1. INSERT INTO TABLE
  2. (id1, kol1)
  3. VALUES
  4. (1,3),
  5. (2,4)

Czy jeżeli chce zrobić update wielu wierszy , każdy o innym id , to muszę za każdym razem wysyłać zapytanie do bazy o każdy zmieniany wiersz ?
Nie da się wysłać jednego dużego zapytania jak w konstrukcji INSERT ?
A może skorzystać z instrukcji INSERT ON DUPLICATE KEY UPDATE ?
Pytam ponieważ potrzebuje "zoptymalizować" ruch sieciowy i wysyłać jak najmniej pakietów. Lepiej wysłać jeden duży niż kilka małych.
Pozdrawiam i dziękuje za wszelaką pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
imbabo
post
Post #2





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 26.03.2011

Ostrzeżenie: (0%)
-----


Może i to by działało , tylko jak teraz podać wartości które chciałbym wstawić w poszczególne id ?

Dopóki jest coś takiego :
  1. UPDATE tabela SET wartosc = 1 WHERE id IN (1,2,3)

To wszystko jest dobrze i robi się update wierszy o id 1,2,3.
Jednak jeżeli chciałbym wprowadzić różne wartości dla każdego id to jakbym miał to zapisać ?

Coś takiego niestety wyrzuca błąd o tym iż nie istnieją kolumny:
  1. UPDATE tabela SET wartosc = (1,2,3) WHERE id IN (1,2,3)


Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 17.10.2025 - 04:33