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

Update bazy danych

+1 głos
232 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,950 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,950 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,950 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,720 p.)
Tak, daje się update bez warunku.

Podobne pytania

0 głosów
1 odpowiedź 91 wizyt
pytanie zadane 28 stycznia w SQL, bazy danych przez Drax Użytkownik (630 p.)
0 głosów
2 odpowiedzi 85 wizyt
pytanie zadane 21 listopada 2018 w SQL, bazy danych przez progNewbie Użytkownik (880 p.)
0 głosów
3 odpowiedzi 129 wizyt
pytanie zadane 17 października 2018 w SQL, bazy danych przez Greeenone Stary wyjadacz (12,380 p.)
Porady nie od parady
Możesz ukryć, zamknąć lub zmodyfikować swoje pytanie, za pomocą przycisków znajdujących się pod nim. Nie krępuj się poprawić pochopnie opublikowanego pytania czy zamknąć go po uzyskaniu satysfakcjonującej odpowiedzi. Umożliwi to zachowanie porządku na forum.Przyciski pytania

65,787 zapytań

112,438 odpowiedzi

237,540 komentarzy

46,728 pasjonatów

Przeglądających: 212
Pasjonatów: 7 Gości: 205

Motyw:

Akcja Pajacyk

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

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...