RENAME
är ett DDL-kommando. Så det är en enda diskret transaktion, om det är vad du menar med atomär i detta sammanhang. Följaktligen är det ungefär så säkert som något kan vara. Jag kan inte föreställa mig hur ett byte av namn skulle få dig att förlora din data. Men om du känner dig paranoid, kom bara ihåg att det var därför naturen gav oss backup och återställning.
redigera
Sättet att vara säker på att du inte förlorar data om DROP
lyckas och RENAME
misslyckas är att distribuera RENAME
två gånger:
SQL> rename old_table to something_else;
SQL> rename new_table to old_table;
SQL> drop table something_else;
På så sätt har du din data online. Detta minimerar även stilleståndstiden.