Triggery - sposoby na aktualizacje kilku tabel

Triggery - sposoby na aktualizacje kilku tabel
S4
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 37
0

Witam mam taki kod

Kopiuj
create table autor_i_ksiazki(
autorID int not null,
ksiazkiID int not null,
FOREIGN KEY (autorID) REFERENCES autor(ID), 
FOREIGN KEY (ksiazkiID) REFERENCES ksiazki(ID)
);
create table autor(
	id      INT NOT NULL PRIMARY  KEY AUTO_INCREMENT,
    imie_aut    VARCHAR(15)  NOT NUll,
    nazwisko_aut VARCHAR(25) NOT NUll
);
create table ksiazki(
	id INT PRIMARY KEY AUTO_INCREMENT,
    nazwa VARCHAR (30) NOT NULL,
    seria VARCHAR (30),
    gatunek Varchar (15)
);

Szukam sposobu trigger który uaktualni autora po dodaniu ksiązki, czy muszę wypełnić każdą tabele osobno(najpewniej procedurą)?

YA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2385
0

Przecież w tabeli Książki nie masz nic o autorze, to na podstawie czego chcesz uzupełniać informacje o autorze?

S4
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 37
0

Właśnie się zastanawiam czy muszę w książki wpisać te same dane co w autor żeby je potem przenieść. Ogólnie baza danych ma być podpięta pod pycharma i nie wiem czy przez konsole nie będzie łatwiej takie dane wrzucać

Marcin.Miga
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2794
0

Najłatwiej będzie ci wrzucać dane przez INSERTa.

YA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2385
0

PyCharm to IDE do Pythona o ile dobrze kojarzę. Co to znaczy baza podpięta pod pycharma i dla kogo (użytkownika aplikacji, developera, admina aplikacji) ma być łatwiej?

Dla użytkownika "dodanie książki" wiąże się z wypełnieniem jakiegoś formularza i kliknięcia przycisku "Zapisz". Te dane, które będą uzupełnione w formularzu mogą być różnie interpretowane przez logikę akcji "Zapisz". Możesz sobie wstawić do jednej, dwóch czy trzech tabel.

Możesz mieć tak, że będziesz miał osobne formularze np. do:

  1. dodania autora
  2. dodania książki dla wybranego autora
  3. dodania książki wraz z autorem
  4. dodania autora wraz z książkami
    itp.
S4
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 37
0

Najłatwiej dla usera.
Czyli darować sobie trigger i spisać komendę na Pythonie?

TI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 66
1
szopen469 napisał(a):

Najłatwiej dla usera.
Czyli darować sobie trigger i spisać komendę na Pythonie?

Zdecydowanie trigger w 99.9% aplikacji nie służy do takich rzeczy.

GUI Twojej aplikacji może wyglądać tak:

  1. wyszukujesz autora
  2. nie ma => dodajesz go do bazy za pomocą odpowiedniego formularza LUB jest => przejdź do pkt. 3
  3. klikasz na autora, wybierasz operację 'dodaj książkę'
  4. tworzysz na formularzu książkę, która ma uzupełnione ID autora klikniętego w poprzednim punkcie
  5. zapisujesz do bazy książkę

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.