Articles of транзакции

Операции mysqli_multi_query и mysql

Я впервые экспериментирую с транзакциями в mySQL. Мне интересно, можно ли с этой целью использовать mysqli_multi_query. То есть, могу ли я предположить, что если какой-либо из SQL-запросов не выполняется, все будет откат? $query = " START TRANSACTION; (a bunch of SQL statements) COMMIT; "; if (mysqli_multi_query($connection, $query)) { do { if ($result = mysqli_store_result($connection)) mysqli_free_result($result); […]

mysql transaction – mix insert & select для достижения last_insert_id?

Я выполняю транзакцию (используя PDO), однако мне нужно захватить идентификатор вставки первого элемента в транзакции, например: BEGIN INSERT INTO user (field1,field2) values (value1,value2) INSERT INTO user_option (user_id,field2) values (LAST_INSERT_ID(),value2); COMMIT; Затем сделайте материал pdo: […] $pdo->execute(); $foo = $pdo->lastInsertId(); // This needs to be the id from the FIRST insert Есть ли способ получить последний […]

Блокировки транзакций PDO?

Я провел обширные исследования транзакций MySQL через интерфейс PHP PDO. Я все еще немного расплывчатый о фактических фоновых разработках методов транзакций. В частности, мне нужно знать, есть ли какая-либо причина, по которой я должен был бы запретить все мои запросы (включая SELECT) внутри транзакции, охватывающей от начала сценария до конца? Конечно, обрабатывая любую ошибку в […]

Ошибка PDO: prepare () с несколькими запросами не работает внутри транзакции

Поиск решения моего предыдущего вопроса Я столкнулся с странным фактом – PDO prepare () с несколькими запросами не работает правильно внутри транзакции. Вы не получаете никаких предупреждений, никаких исключений, ничего – просто молчания и не совершаете / откатываете. Кроме того, вы не получаете исключения, даже если некоторые из запросов, кроме первого, содержат ошибки. Хотя если […]

Можно ли отменить транзакцию после ее использования с помощью Datamapper / Codeigniter?

Можно ли отменить транзакцию после ее совершения? Я спрашиваю об этом, потому что в документации Datamapper я вижу метод trans_begin() , но я не нашел метод trans_end() . Codeigniter имеет метод trans_complete() , поэтому я предположил, что Datamapper может иметь аналогичный метод. Одна вещь, которую я нашел интересной, – это ответ . Есть ли что-то […]

Срок действия идентификатора транзакции Paypal PDT

Я получил ошибку 4003 от paypal PDT, когда пытался получить информацию о платежах с использованием идентификатора транзакции. Хотя у меня есть аналогичная тема: Paypal PDT error 4003 и я считаю, что ответ объясняется тем, что мой идентификатор транзакции истек. Однако я не смог найти информацию о том, как долго истекает срок действия идентификатора транзакции. p […]

PHP mysqli :: autocommit VS "START TRANSACTION"

В нашем объекте слоя базы данных мы всегда управляли транзакциями с операциями SQL «START TRANSACTION», «ROLLBACK» и «COMMIT» SQL, выполняемыми с помощью mysqli :: query. Проведя некоторое исследование сегодня, я обнаружил это упоминание в Руководстве MySQL относительно использования вызовов уровня API для управления транзакцией VS с использованием прямого SQL: Важный Многие API-интерфейсы, используемые для написания […]

MySQL Вставка очереди сообщений

Мы создаем приложение ajax, в которое пользовательский ввод отправляется для обработки в php-скрипт. В настоящее время мы записываем каждый запрос в файл журнала для отслеживания. Я хотел бы переместить это отслеживание в таблицу базы данных, но я не хочу запускать инструкцию insert после запроса. То, что я хотел бы сделать, – создать «очередь» транзакций (вставки […]

Laravel 4 – транзакция db при сохранении при автоматическом создании другой модели

У меня есть две модели: UserPayout и UserTransaction, где UserTransaction является полиморфной и нужно знать, к какой модели она принадлежит. Всякий раз, когда пользователь создает выплату, транзакция должна быть автоматически сделана. Если что-то пошло не так в этом процессе, оба должны вернуться. Мое фактическое решение выглядит следующим образом: контроллер: $user_payout = new UserPayout($input); $user->payouts()->save($user_payout); UserPayout: […]

Транзакции и PHP

Я пытаюсь сделать такие функции, чтобы убедиться, что при щелчке все значения сохраняются в нескольких таблицах базы данных успешно. Я прочитал статью об этом, и он говорит: «В PHP таких методов нет, и мы должны использовать прямой SQL. (В PHP PDO есть такие методы.)» Пожалуйста, дайте мне знать, возможно ли внедрить транзакцию и завершить транзакцию […]