• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Update bazy danych

VPS Starter Arubacloud
+1 głos
640 wizyt
pytanie zadane 30 czerwca 2017 w SQL, bazy danych przez BeFree Początkujący (380 p.)
Hej

W jaki sposób przeprowadza się duże updaty na bazie danych?

Np. aktualizacja kilkuset rekordów?

Czy jest jakiś inny sposób niż pisanie mozolnie:

update...;

update...;

itd. osobno dla każdego rekordu?

2 odpowiedzi

+3 głosów
odpowiedź 30 czerwca 2017 przez CjanciK Bywalec (2,970 p.)

Witaj,

To zależy czego oczekujesz po UPDATE. Jeżeli chcesz zaktualizować całą kolumnę tymi samymi wartościami to po prostu w UPDATE nie używasz WHERE. Natomiast kiedy chcesz zaktualizować sobie rekordy innymi wartościami i sprawa się komplikuje.

Ja robię to w ten sposób że wyrzucam tabelę do Excela i zmieniam w tabeli wartości które chcę zmienić ,np mam tabelę:

  A B
1 wartoscA wartoscB
2 wartoscC wartoscD

Chcę zmienić wartoscA na wartoscE, a wartoscD na wartoscF to zmieniam wartości w tabeli i dodaje kolumne z UPDATE, czyli:

  A B C
1 wartoscE wartoscB ="UPDATE moja_tabela SET a="&A1&", B="&B2&"
2 wartoscC wartoscF  

W kolumnie C mam formułę którą przeciągam do końca tabeli, kopiuje wszystkie UPDATE do SQL daje Execute i tabelka zaktualizowana :)

Mam nadzieję, że to może w jakim stopniu pomoże :)

pzdr

komentarz 30 czerwca 2017 przez BeFree Początkujący (380 p.)

Dzięki za odpowiedź!

Moja sytuacja jest nieco inna.

Taki przykład:
Mam dwie tabele: tabela A i tabela B. Chcę zaktualizować wartości jednej kolumny w tabeli A, ale każda wartość, którą chcę zaktualizować zależna jest od pewnej wartości z tabeli B.
Moja komenda wygląda tak:

 

UPDATE up SET
    A.NazwaProduktu = 'Jakaś wartość'
FROM B.ListaProduktów
    JOIN A.MagazynProdukty up ON B.MagazynIDProduktu = A.IDProduktu
    WHERE B.MagazynIDProduktu = A.IDProduktu AND B.KodProduktu = 'jakiśkod';

 

Czy mogę zrobić update prościej, bez pisania osobnego update dla każdego rekordu? :)

 

komentarz 30 czerwca 2017 przez CjanciK Bywalec (2,970 p.)
Pokaż strukturę bazy :)
komentarz 30 czerwca 2017 przez BeFree Początkujący (380 p.)

Sory trochę namieszałem w tym zpytaniu . Jeszcze raz
 

UPDATE up SET
    MagazynProdukty.NazwaProduktu = 'Jakaś wartość'
FROM ListaProduktów
    JOIN MagazynProdukty up ON ListaProduktów.IDProduktu= MagazynProdukty.IDProduktu
    WHERE ListaProduktów.IDProduktu= MagazynProdukty.IDProduktu AND ListaProduktów.KodProduktu = 'jakiśkod';

Piszę z głowy. Teraz myślę że struktura jest przerzysta:)

komentarz 30 czerwca 2017 przez CjanciK Bywalec (2,970 p.)
Którą tabelę chcesz zaktualizować ?

W update podajesz tabele "up", a w set ustawiasz kolumnę z tabeli MagazynProdukty.

Najlepiej jakbyś wrzucił w jakims .jpg struktruę Twojej bazy.
+2 głosów
odpowiedź 30 czerwca 2017 przez Boshi VIP (100,240 p.)
Tak, daje się update bez warunku.

Podobne pytania

0 głosów
1 odpowiedź 771 wizyt
pytanie zadane 28 stycznia 2019 w SQL, bazy danych przez Drax Użytkownik (630 p.)
0 głosów
2 odpowiedzi 177 wizyt
0 głosów
3 odpowiedzi 274 wizyt
pytanie zadane 17 października 2018 w SQL, bazy danych przez Greeenone Pasjonat (16,100 p.)

92,454 zapytań

141,263 odpowiedzi

319,099 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...