Я прочитал несколько руководств и кое-что понял о протоколах блокировки и, наконец, начал разбираться в сериализуемости
Я создаю небольшую структуру и библиотеку, которая использует шаблон DAO. Я пишу в PHP.
Я уже создал простой компонент транзакции, который выполняет базовые c методы и блокирует строки, то есть dbms agnosti c, поэтому я мог вызывать методы:
$transact = $sql->transaction();
$transact->begin();
$sql->query()
->select(*)
->from('User')
->where('id','=',$id)
->lock('exclusive')
->get();
$transact->commit();
Я знаю, что протоколы на основе блокировки могут быть реализованы в mysql с помощью оператора FOR UPDATE или LOCK IN SHARED MODE, но как явно назначить временную метку транзакции? Или в этом нет необходимости?
СУБД делает это автоматически?
Я поискал в Интернете и не нашел практической информации о том, как реализовать это вручную, если было несколько транзакций, не знаю, с чего начать