Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Базы Данных > Транзакции + PHP (Общие вопросы)


Автор: K1ng 15.7.2009, 23:39
1) Помогите освоить! =) Никак не пойму как применять транзакции из PHP-сценария... :( Функции может какие?

2) И что вообще использовать? "START TRANSACTION;" или "BEGIN"? В разных книгах по-разному... В одной вообще mysqli используют... =(

3) И третий вопрос, просто из любопытства! Зачем нужен "ROLLBACK;"? Если заведомо известно, что перечень команд либо выполнится полностью и будет сохранен COMMIT-ом, либо откатится без помощи ROLLBACK? Кто будет устанавливать соединения чтобы запросить и откатить? О_о Я базы данных начал узнавать весьма недавно и всгда предполагал, что соединение с БД открывается на маленький промежуток времени, чтобы быстро запросить и закрыть и так несколько раз на протяжении сценария... Или лучше держать его открытым? Что дает больше нагрузки? 

P.s. PHP5, MySQL5

Автор: Ипатьев 16.7.2009, 08:25
1) PHP к транзакциям вообще никакого отношения не имеет. от PHP тут нужна только функция выполнения запроса, mysql_query например.
Если ты не знаешь, какие запросы писать, то РНР тебе тут не поможет. Сначала надо прочитать про транзакции в документации, потом потренироваться делать их в консоли, а потом уже писать РНР.
2) Книги надо читать по mysql, а не по другим базам данных. Там сразу написано. что без разницы.
3) Если произойдет сбой во внешних, по отношению к базе, источниках. К примеру, ты начал транзакцию, но не поступили в скрипт нужные данные. Тогда откатываешь.

Цитата(K1ng @  15.7.2009,  23:39 Найти цитируемый пост)
и так несколько раз на протяжении сценария.

это не имеет смысла

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)