![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 19.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
na początku opiszę powiązanie bazy: Tabela ZEGAREK zwiera dane ID_ZEGAREK int primary key; Producent varchar(20); Tablea Atrybuty posiada atrybuty dotyczące zegarka, ale nie będę ich wymieniał bo są mało istotne. Głównym atrybutem wiążącym tabelę ATRYBUTY z ZEGAREK jest : ID_ZEGAREK_obcy int; Oczywiście jest dodane powiązanie między tabelami. Baza jest INNODB więc wszystkie takie podstawowe zależności zostały zachowane. Mam zapytanie następujące: CODE $pobranie_id_zegarka="select (ID_ZEGARKA)+1 FROM ZEGAREK ORDER BY ID_ZEGARKA DESC limit 1"; Zapytanie zwraca ostatnie ID // przykładowo w bazie jest 81 wpisów to wpis uzyskany z tego zapytanie będzie równy 82 CODE $wstawienie_do_zegarek="INSERT INTO ZEGAREK(ID_ZEGARKA,Producent) VALUES ('".$pobranie_id_zegarka."','" . $_POST[Producent] . "')"; Tu wstawiam do tabeli ZEGAREK nowe ID wczesniej pobrane oraz producenta wybranego z formularza. Z tym nie ma problemu, dane zostają wstawione do tabeli. Natomiast i tuaj pojawia się problem, zapytanie: CODE $zegarek_dodawany = "INSERT INTO ATRYBUTY (ID_ZEGARKA_obcy,Nazwa_zeg,Wymiary,Mechanizm,Obudowa,Tarcza,Wodoszczelnosc,Stope ,Budzik,Datownik,Pasek,Dodatkowe_informacje,Gwarancja,Cena,ID_KATEGORIA_obcy) VALUES ( '".$pobranie_id_zegarka."', . . . ); Wyskakuje błąd: Niepoprawne zapytanie: Cannot add or update a child row: a foreign key constraint fails (`149996/ATRYBUTY`, CONSTRAINT `FK_ATRYBUTY_ZE` FOREIGN KEY (`ID_ZEGARKA_obcy`) REFERENCES `ZEGAREK` (`ID_ZEGARKA`)) Jak można rozwiązać tą sytuację ? Chcę dodać po prostu wprowadzać dane do 2 tabel a teraz jest to niemożliwe. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 16:03 |