Ответ 1
DROP TABLE
может быть откат и не автокопирование.
Мой вопрос прост, но я все еще сомневаюсь, когда создал эту транзакцию. Если я выполнил следующий код:
BEGIN TRANSACTION
DROP TABLE Table_Name
Могу ли я выполнить ROLLBACK TRANSACTION, который восстанавливает упакованную таблицу? Я спрашиваю, потому что я не знаю, что происходит в "Обозревателе объектов", и я не нашел никакого вопроса по этой теме, поэтому я думаю, что это может быть полезной проблемой.
DROP TABLE
может быть откат и не автокопирование.
Это невероятно легко проверить.
create table TransactionTest
(
ID int identity primary key clustered,
SomeValue varchar(20)
)
insert TransactionTest
select 'Here is a row'
begin transaction
drop table TransactionTest
rollback transaction
select * from TransactionTest
Я просто хочу добавить, что я пытался использовать Oracle 11g, Mysql 5.7 и MSSQL 2016. Он только откатывался (работал) с MSSQL RDBMS. Я бы ожидал, что большинство других СУБД не будут поддерживать его, поскольку он выполняет изменения схемы.
ORACLE PL/SQL EX:
savepoint mysave;
DROP TABLE test_table;
ROLLBACK TO mysave;
select * from test_table;