|
|
|
php как выполнить транзакцию в MySQL ?
|
|||
|---|---|---|---|
|
#18+
Подскажите как правильно в php выполнить транзакцию в MySQL и как проанализировать ошибки, если такие были? MySQL 5.5 (таблицы в InnoDB). Я попробовал сделать через mysqli, но он мне всегда говорит, что commit() успешно выполнен, хотя 2-й запрос транзакции я специально сделал не верным, по факту в БД создается только 1 строка. Я так понял, что транзакции придумали, чтобы в данной ситуации ни одна запись не создалась... И не могу найти информацию о том, как мне получить ошибки, если транзакция не прошла? Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2015, 20:23:51 |
|
||
|
php как выполнить транзакцию в MySQL ?
|
|||
|---|---|---|---|
|
#18+
lucky89, то ли ->beginTransaction(), толи startTransaction() или transactionBegin() ... сколько работаю, столько и путаюсь... смотрите на ru2.php.net. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2015, 09:46:21 |
|
||
|
php как выполнить транзакцию в MySQL ?
|
|||
|---|---|---|---|
|
#18+
lucky89Я попробовал сделать через mysqli, но он мне всегда говорит, что commit() успешно выполнен, хотя 2-й запрос транзакции я специально сделал не верным, по факту в БД создается только 1 строка. Я так понял, что транзакции придумали, чтобы в данной ситуации ни одна запись не создалась... Это ты понял неверно. Использование транзакции не освобождает от необходимости проверять ошибки запросов, оно только позволяет отменить все успешные запросы после ошибки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2015, 13:49:33 |
|
||
|
|

start [/forum/topic.php?fid=47&fpage=133&tid=1833030]: |
0ms |
get settings: |
10ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
26ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 223ms |
| total: | 320ms |

| 0 / 0 |
