Mysql
 sql >> Database >  >> RDS >> Mysql

Qual è l'equivalente del buco nero?

Con PostgreSQL 9.1 puoi creare trigger allo stesso modo in cui puoi farlo con MySQL. Tieni presente che non è possibile creare attivatori sulle viste nelle versioni precedenti alla 9.1.

Utilizzi il motore di archiviazione BLACKHOLE per il tuo buco nero tabelle in MySQL o è solo un nome? Non ci sono motori di archiviazione collegabili in PostgreSQL, ma puoi ottenere lo stesso comportamento del motore di archiviazione BLACKHOLE in MySQL con trigger INSTEAD OF su una vista in PostgreSQL. Non capisco bene il tuo punto di vista su data-aware controlli:afaik non hai alcuna consapevolezza dei dati in una tabella BLACKHOLE (il motore di archiviazione), ma d'altra parte puoi ovviamente ad es. mappare un'entità di ibernazione a una vista del database.

Se è una buona o una cattiva idea utilizzare i trigger per semplificare il codice dell'applicazione dipende dal caso d'uso effettivo. Ad esempio, preferisco i trigger alla logica dell'applicazione per la registrazione e il controllo, perché questo approccio offre un'unica soluzione per diverse applicazioni che si connettono al database, nonché per query/dichiarazioni ad hoc da parte di un amministratore. Ma dalla mia esperienza, i trigger non rimuovono la complessità ma la spostano semplicemente sul livello del database. Questo generalmente rende più difficile estendere e mantenere un'applicazione multistrato.