Форум программистов, компьютерный форум, киберфорум
MySQL
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
0 / 0 / 1
Регистрация: 04.03.2015
Сообщений: 47

Не работает транзакция

10.10.2016, 14:05. Показов 2992. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть таблица в формате innoDB. Пытаюсь выполнить транзакцию, а инструкции выполняются сразу же, не дожидаясь подтверждения. Из-за чего это может происходить? Формат innoDB вроде как пишут, что поддерживает транзакцию.

Вот код:

MySQL
1
2
3
4
START TRANSACTION;
UPDATE user_account SET allsum=allsum + 1000 WHERE id='1';
UPDATE user_account SET allsum=allsum - 1000 WHERE id='2';
COMMIT;
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.10.2016, 14:05
Ответы с готовыми решениями:

Батч vs. Транзакция
Объясните, плиз, чем батч отличается от транзакции? Ведь и то и другое обычный набор действий.

Тут нужна транзакция?
По cron'у стартует одновременно 5 php-скриптов, все они начинают обрабатывать одну таблицу, каждый выбирает последнюю запись, и берёт из...

Что такое транзакция?
Что такое транзакция? Википедию не посетовать! Если возможна, покажите, пожалуйста, примитивную примеру

10
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
10.10.2016, 14:21
Цитата Сообщение от tretstoun72 Посмотреть сообщение
инструкции выполняются сразу же, не дожидаясь подтверждения
Не понял, какие инструкции?
0
0 / 0 / 1
Регистрация: 04.03.2015
Сообщений: 47
10.10.2016, 16:07  [ТС]
Команды update.
0
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
10.10.2016, 16:24
Цитата Сообщение от tretstoun72 Посмотреть сообщение
Команды update
Ну так они есть в тексте, поэтому и работают. В чем вопрос-то?
0
476 / 239 / 114
Регистрация: 12.05.2016
Сообщений: 647
10.10.2016, 18:42
Патамушта:

The default MySQL setting AUTOCOMMIT=1
По умолчанию база автокоммитит каждый отдельный запрос.
Нужно отключать автокоммит в конфиге.
0
0 / 0 / 1
Регистрация: 04.03.2015
Сообщений: 47
06.12.2016, 14:27  [ТС]
Файл конфига называется "config.inc.php", правильно? Что-то там я не могу найти эту настройку. Или этот файл называется как-то по-другому?

Добавлено через 17 минут
Или конфигурационный файл называется my.ini? Там тоже не нашёл такой настройки. Где нужно указать эту настройку?
0
1234 / 424 / 107
Регистрация: 31.03.2012
Сообщений: 1,159
06.12.2016, 19:46
tretstoun72, первоисточник читать не пробывал?
0
0 / 0 / 1
Регистрация: 04.03.2015
Сообщений: 47
07.12.2016, 12:16  [ТС]
Отключил режим автоподтверждения в файле настроек ([mysqld]
autocommit=0) - теперь инструкции не выполняются после команды START TRANSACTION;,

но не подтверждаются, хотя я набираю COMMIT;

В чём может быть причина?

Добавлено через 1 минуту
Без START TRANSACTION; команды выполняются, а после того, как набрал эту команду - следующие инструкции не выполняются и подтвердить их не получается..
0
1234 / 424 / 107
Регистрация: 31.03.2012
Сообщений: 1,159
07.12.2016, 18:27
в архиве небольшой ролик
две консоли - на первой, в транзакции(!), вставляем записи в таблицу, но не подтверждаем и не откатываем транзакцию. И сразу выбираем записи из таблицы, - все записи видны. Переключаемся на вторую консоль, выбираем записи из той же таблицы - получаем фиг. На первой консоли, подтверждаем транзакцию и опять переключаемся на вторую консоль. Выбираем записи - профит...
Вложения
Тип файла: 7z cfSQL.7z (1.09 Мб, 2 просмотров)
0
0 / 0 / 1
Регистрация: 04.03.2015
Сообщений: 47
08.12.2016, 12:23  [ТС]
Так что показывает этот ролик? Что-то я не очень понял. Т.е. через первую консоль как бы транзакция не работает, все запросы выполняются сразу же, а через вторую консоль как бы транзакция работает. Что-то не очень понятно.

Я вообще через phpMyAdmin работаю. У меня команды не выполняются и их никак не подтвердить.
0
1234 / 424 / 107
Регистрация: 31.03.2012
Сообщений: 1,159
08.12.2016, 22:05
Цитата Сообщение от tretstoun72 Посмотреть сообщение
Что-то я не очень понял
Извини, у меня бисер закончился
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.12.2016, 22:05
Помогаю со студенческими работами здесь

Транзакция stored proc в ADO.NET
Есть хранимые процедуры (SQL Server 2005), в них несколько SQL Statements. Есть внешнее приложение использующее ADO.NET 2.0. Было...

Не работает транзакция MySQL
Не понимаю, таблица newTable уже существует, при этом запись в таблицу organization все ровно записывается, хотя не должна так как выходит...

Транзакция
Как можно реализовать такое? У меня есть два метода, первый допустим удаляет файл, а второй создаёт. Мне надо , чтобы если второй метод...

Транзакция
Все доброго времени суток. Друзья подскажите что такое транзакция и с чем её едят ?! Стал читать информацию, и понял что это очень...

транзакция
Помогите, пожалуйста. Нужен исходник программы с транзакциями, с точками сохранения и отката транзакции.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru