phpMyAdmin
 sql >> Database >  >> Database Tools >> phpMyAdmin

Aggiorna automaticamente le scorte nel database MySQL

Quello che stai chiedendo non è tecnicamente una "relazione" in senso tecnico quando ti riferisci a database relazionali. Tali relazioni sono cose come avere una tabella che fa riferimento alla "chiave" di un'altra tabella, ad esempio mettendo in relazione una tabella con l'indirizzo di un cliente con un'altra tabella con l'ordine del cliente. Ad ogni modo, questo va oltre lo scopo di ciò che hai chiesto, quindi per rispondere alla tua domanda, puoi farlo nel codice dell'applicazione o in un trigger.

I trigger sono funzioni del database che fanno qualcosa quando si verifica un INSERT, UPDATE o DELETE.

Qualcosa del genere dovrebbe funzionare bene con piccoli aggiustamenti per i nomi di tabelle/colonne:

UPDATE table2 SET inventory = inventory - NEW.qty where id = NEW.id_product;

Ora che copre solo un INSERT; ti consigliamo di creare un altro trigger per Event UPDATE e probabilmente in qualche modo gestire anche l'inventario restituito o gli ordini annullati, ma probabilmente è qualcosa che gestirai a livello di applicazione piuttosto che in un trigger.