Проверьте против XML-схемы или DTD, также ключ от английского замка, что узлы имеют значения, которые Вы ожидаете.
Это зависит от вашего уровня изоляции. Если вы используете READ COMMITTED
, SELECT
создает блокировки, только если вы укажете SELECT FOR UPDATE
. Если вы используете REPEATABLE READ
или выше, каждый SELECT
может создавать блокировку (зависит от модели вашей базы данных).
Я не очень уверен в режиме автоматической фиксации java JDBC, я устанавливаю соединение, для которого установлен режим автоматической фиксации false. После этого я запускаю запрос выбора в базе данных, который работает нормально, у меня сложилось впечатление, что фиксация должна вызываться только для операторов insert, update, delete.
Это зависит от вашего приложения. Если есть простые обновления, вставки, удаления, вы можете оставить autocommit = на . Как правило, рекомендуется отключить автоматическую фиксацию. Такая конфигурация дает вам большую гибкость и мощность в применении. Вы можете использовать сложные транзакции, и вы можете решить, когда транзакция начинается и когда заканчивается.
Теперь мне нужно зафиксировать соединение для запроса Select? Если нет, эта таблица не будет заблокирована для других транзакций?
Нет, выбрать статус не начинает транзакцию (вставить, обновить, delete делает), поэтому нет необходимости выполнять фиксацию / откат после выбора статуса. Есть один особый случай выбора, какая блокировка выбранных строк и нужна транзакция - с для обновления , пункт