Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Update tabeli z innej + wstawienie stałych danych
Forum PHP.pl > Forum > Bazy danych > MySQL
4Axis
Witam.
Mam dwie tabele

tab1
----------------------------
id_Prod | id_Tag | opias |
-----------------------------
1 | 1 | Kula |
-----------------------------
2 | 1 | Kula |
-----------------------------

tab2
---------
id_Prod |
---------
7 |
---------
8 |
---------
12 |
---------
17 |
---------
22 |
---------
77 |
---------

Chciałbym uaktualnić tab1 tak, żeby dodało pozycje z tab2 id_Prod do tab1 i uzupełniło wszystkie id_Prod o id_Tag = 1 i opis = Kula.

Będę wdzięczny za każdą rzeczową podpowiedź.
nospor
Jesli chodzi o z wykle skopiowanie rekordow z tabeli2 to tabeli 1 to
insert into.....select - patrz manual mysql
4Axis
Próbowałem, ale mi nie wchodzi, chyba muszę od razu podać pozostałe parametry czyli id_Tag i opis bo id_Tag jest połączony z inną tabelą.
  1. INSERT INTO `tab1` (`id_Prod`)
  2. SELECT `id_Prod` FROM `tab2`;

Błąd:
#1452 - Cannot add or update a child row: a foreign key constraint fails...
nospor
no tak, w insert masz wyszczegolnic pozostale kolumny a w select masz te wartosci dla tych kolumn podac
4Axis
sad.gif domyślam się tylko nie mam pojęcia jak połączyć SELECT dla jednej kolumny ze określoną stałą wartością dla pozostałych. Powalczę z tematem wink.gif
nospor
INSERT INTO `tab1` (`id_Prod`,`InnaKolumna`)
SELECT `id_Prod`,'Stala wartosc tekstowa dla kolumny' FROM `tab2`;
4Axis
Dziękuję za pomoc. Poszło jednak nie bez problemów. Tabela z indexami i relacjami, na razie tego nie ogarniam sad.gif .
Na szybko pousuwałem wszystkie indexy i relacje natępnie wykonałem INSERT INTO * SELECT * i ponownie nadałem indexy i relacje facepalmxd.gif
Po tej operacji niby jest ok, ale smile.gif:
duplikuję mi się wpisy z `id_Prod`. Jeżeli miałem w `tab1`.`id_Prod` wartość 1 i tą samą w `tab2`.`id_Prod` to po wykonaniu w tab1 mam 2 rekordy z wartością 1. Czy można temu zaradzić?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.