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

OUTPUT Clausola in MySQL

  1. Potresti creare un trigger e inserire i valori di cui hai bisogno in un'altra tabella.
  2. Non ne sono sicuro, ma - per i tavoli MYISAM potresti bloccare employee tabella, seleziona e inserisci i valori in un'altra tabella, quindi aggiorna e sblocca employee tabella.

MODIFICA:

Ho provato uno scenario con la tabella InnoDb, sembra che funzioni -

START TRANSACTION;

SELECT * FROM table WHERE id = 1 FOR UPDATE; -- lock rows
-- Or call this select to insert and lock rows
-- INSERT INTO table_output SELECT * FROM table WHERE id = 1 FOR UPDATE;

-- Make modifications
UPDATE table SET column1 = '111' WHERE id = 1;

COMMIT;

Istruzione SELECT (clausola FOR UPDATE)