Я знаю, что транзакции базы данных используются для обеспечения выполнения всех операторов транзакции или ни одного из них.Вопрос новичка о транзакциях с базами данных
Но как насчет блокировки и безопасности потоков, например, если у меня есть sproc, который влияет на несколько таблиц, и я использую транзакцию в этом sproc, что sproc вызывается из разных клиентов одновременно, будут ли транзакции работать параллельно или они будут поставлены в очередь? Другими словами, использует ли транзакция гарантию, что она «заблокирует» всех других клиентов и заставит их ждать завершения транзакции?
Также существуют ли различия между транзакциями базы данных в SQL Server и MySQL? Я имею в виду, как они работают.
Если вы хотите добавить, InnoDB блокирует таблицу, MyISAM блокирует строку. в MySQL. –
@ Ólafur Waage, на самом деле все наоборот – 2009-04-23 02:28:49
Вы говорите, что MySQL (используя один из двигателей, непонятно, что) блокирует целую таблицу на время транзакции? Это кажется ужасным способом сделать это. – paxdiablo