Помогите, пожалуйста, разобраться с транзакциями

Dogmat

Новичок
TRANSACTION

Помогите, пожалуйста, разобраться с транзакциями.


Делаю запросы к таблице TABLE (тип таблицы BerkeleyDB )

$obj->query("SET AUTOCOMMIT=0");
$obj->query("START TRANSACTION");

$obj->query("DELETE FROM TABLE); //удалем полностью
$obj->query("ROLLBACK");
$obj->query(INSERT INTO TABLE);

$obj->query("COMMIT");

Всё работает, только вот сделано это мной чисто методом "...нука, а если вот сюда...".


Помогите разобраться...
Как вначале удалить таблицу...
Потом вставить новые данные...
Если не получилось вставить новые данные откатить таблицу, т.е. не удалять таблицу...

Заранее спасибо.
 

nirex

Новичок
убери откат, по идее если инсерт не удастся, то скрипт должен вернуть ошибку и завершиться, а если есть исключения, то их надо отлавливать, все зависит как устроен твой класс работы с бд
 
Сверху