Мой SQL › можно ли отменить оператор CREATE DATABASE?

Я намеревался создать несколько баз данных и предоставить привилегии соответствующим пользователям. Например,

CREATE DATABASE DB1;
GRANT .. ON .. TO DB1;
CREATE DATABASE DB2;
GRANT .. ON .. TO DB2;
CREATE DATABASE DB3;
GRANT .. ON .. TO DB3;

Но я хочу сделать так, чтобы в случае сбоя какого-либо из этих операторов все предыдущие операторы, такие как "CREATE DATABASE" или "GRANT...", должны были быть отменены, как ROLLBACK транзакционных операторов.

Это возможно?


person Rui    schedule 16.11.2015    source источник


Ответы (2)


Вы не можете выполнить откат с помощью рабочей среды Mysql. Toad For Mysql поддерживает параметры отката, вы можете загрузить его с веб-сайта ниже:

http://toad-for-mysql.en.softonic.com/

person Jack Jreige Chalouhy    schedule 16.11.2015

Ни оператор CREATE TABLE, ни оператор GRANT не могут быть отменены в mysql с помощью стандартной команды отката, см. документацию mysql на команды, вызывающие неявную фиксацию.

Вы должны вручную откатить эти операторы, удалив созданные объекты базы данных и отозвав предоставленные права доступа.

Некоторые приложения-менеджеры mysql могут иметь такие функции, но они также полагаются на ручную отмену команд.

person Shadow    schedule 16.11.2015