sql >> Databasteknik >  >> RDS >> Mysql

Mysql returnerande klausul motsvarande

Tyvärr kan du inte göra både infogning och borttagning i en fråga , men du kan göra allt i en transaktion om du använder en transaktionsbutiksmotor (som InnoDB). Dessutom RETURNING stöds av Oracle och PostgreSQL men inte av MySQL och därför måste du skriva separat delete och insert uttalanden.

Att använda en transaktion kommer dock att garantera att endast framgångsrikt kopierade data kommer att raderas från tabell A. Tänk på följande:

begin transaction;
insert into tableB select * from tableA where 'your_condition_here';
delete from tableA where 'your_condition_here';
commit;


  1. Hur man skapar ett formulär med formulärguiden

  2. Har någon hittat ett effektivt sätt att lagra BSON ObjectId-värden i en SQL-databas?

  3. Kapslade fönsterfunktioner i SQL

  4. Fixar ORA-65096-fel när man skapar automatiserade tester i Django med Oracle