|
|
|
Вы думали что знали о PreparedStatement все?Возможно, вы ошибались...
|
|||
|---|---|---|---|
|
#18+
Код: java 1. 2. 3. 4. 5. 6. 7. 8. Внимание вопрос: сколько row локов будет в базе в точке А на n-итерации цикла при условии что записи с 1-5 есть в базе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2018, 22:51 |
|
||
|
Вы думали что знали о PreparedStatement все?Возможно, вы ошибались...
|
|||
|---|---|---|---|
|
#18+
no56892, дружище. Здесь тема Java не прослеживается. Если ты решил блеснуть эрудицией то попробуй это сделать в MS-SQL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2018, 23:32 |
|
||
|
Вы думали что знали о PreparedStatement все?Возможно, вы ошибались...
|
|||
|---|---|---|---|
|
#18+
mayton, вот прямо таки прослеживается очень, там я уже успел блеснуть - http://www.sql.ru/forum/1286817/dedloki, проблема на клиенте, а именно в дажвовоских препаредстейтментах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2018, 00:16 |
|
||
|
Вы думали что знали о PreparedStatement все?Возможно, вы ошибались...
|
|||
|---|---|---|---|
|
#18+
no56892проблема на клиенте, а именно в дажвовоских препаредстейтментах. А что с ними не так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2018, 01:48 |
|
||
|
Вы думали что знали о PreparedStatement все?Возможно, вы ошибались...
|
|||
|---|---|---|---|
|
#18+
maytonА что с ними не так?Например - поддержка в jdbc-драйвере. Но более вероятно - корявое связывание: строковая переменная вместо числового (по смыслу) параметра. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2018, 01:55 |
|
||
|
Вы думали что знали о PreparedStatement все?Возможно, вы ошибались...
|
|||
|---|---|---|---|
|
#18+
Речь идет о mssql-jdbc ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2018, 02:07 |
|
||
|
Вы думали что знали о PreparedStatement все?Возможно, вы ошибались...
|
|||
|---|---|---|---|
|
#18+
Автор нигде этого не уточнял, поэтому можно "построить несколько рабочих версий" (ц) "Гонки по вертикали" братьев Вайнеров. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2018, 02:11 |
|
||
|
Вы думали что знали о PreparedStatement все?Возможно, вы ошибались...
|
|||
|---|---|---|---|
|
#18+
no56892Внимание вопрос: сколько row локов будет в базе в точке А на n-итерации цикла при условии что записи с 1-5 есть в базе? Ответ: а пофигу. Вопрос не имеет отношения к Java. авторвот прямо таки прослеживается очень, там я уже успел блеснуть - http://www.sql.ru/forum/1286817/dedloki, проблема на клиенте, а именно в дажвовоских препаредстейтментах. Вам показалось. Посмотрев (с немалой скукой) ту тему, увидел, что ваша претензия в том, что транзакция создавалась неявно. Но это не имеет отношения к prepared statement . Однако у JDBC драйверов всегда есть особенности, а для MS SQL Server есть несколько JDBC драйверов. Аоэтому всегда надо заглядывать в документацию по JDBC драйверу. Вот, делаю поиск в google по словам jdbc ms sql transaction и нахожу : описание для одного драйвера автор Драйвер JDBC поддерживает локальные транзакции с помощью различных методов SQLServerConnection класса, включая setAutoCommit, фиксациии отката. Локальные транзакции обычно явно управляются приложением или автоматически управляются сервером приложений Java Enterprise Edition (Java EE). Здесь рекомендуется отключить autoCommit и вместо него использовать commit() и rolback(). Что он по умолчанию включён - обычное свойство JDBC драйверов. Не имеет отношения к prepared statement. То есть, ваши претензии необоснованны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2018, 15:12 |
|
||
|
Вы думали что знали о PreparedStatement все?Возможно, вы ошибались...
|
|||
|---|---|---|---|
|
#18+
no56892 Код: java 1. 2. 3. 4. Внимание вопрос: сколько row локов будет в базе в точке А на n-итерации цикла при условии что записи с 1-5 есть в базе? С учетом commit - ни одного Т.к. блокироки в базе обычно держатся на время транзакции Например - поддержка в jdbc-драйвере. Но более вероятно - корявое связывание: строковая переменная вместо числового (по смыслу) параметра. Какая связь между связыванием и блокировками? Корявое связывание - может только на план сказаться (не будут использоваться индексы), но никак не на блокировки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2018, 17:34 |
|
||
|
Вы думали что знали о PreparedStatement все?Возможно, вы ошибались...
|
|||
|---|---|---|---|
|
#18+
Leonid KudryavtsevС учетом commit - ни одного Тогда бы, наверное, и темы не было ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2018, 19:19 |
|
||
|
Вы думали что знали о PreparedStatement все?Возможно, вы ошибались...
|
|||
|---|---|---|---|
|
#18+
Я уже подумал, что мир в очередной раз перевернулся с ног на голову. Но не.... https://docs.microsoft.com/ru-ru/sql/t-sql/queries/hints-transact-sql-table MSDNUPDLOCK Указывает, что блокировки обновления применяются и удерживаются до завершения транзакции .... https://docs.microsoft.com/ru-ru/sql/t-sql/language-elements/commit-transaction-transact-sql MSDNCOMMIT TRANSACTION (Transact-SQL) .... Отмечает успешное завершение явной или неявной транзакции ..... MSDN... Если @@TRANCOUNT -1, инструкция COMMIT TRANSACTION делает все изменения данных выполняется с момента начала транзакции постоянной частью базы данных, освобождает ресурсы, удерживаемые транзакцией и уменьшает значение @@TRANCOUNT значение 0. Если @@TRANCOUNT больше 1, инструкция COMMIT TRANSACTION уменьшает @@TRANCOUNT только на 1 и транзакция остается активной .... Т.ч. думаю не ошибусь предположить, что у кого-то кривые руки и в какой-то момент на сервер банально приходит лишний BEGIN TRANSACTION. Странно правда, что COMMIT даже в цикле не пробил ))), но я всегда призывал доверять "профессионализму коллег" ))). Что один человек сделал, другой завсегда сломать сумеет ( С ) IMHO P.S. MS SQL не знаю, не работал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2018, 11:06 |
|
||
|
Вы думали что знали о PreparedStatement все?Возможно, вы ошибались...
|
|||
|---|---|---|---|
|
#18+
HettLeonid KudryavtsevС учетом commit - ни одного Тогда бы, наверное, и темы не было Вот прочитал исходную тему автора.... там у него и была проблема, что lock при SELECT'е слетал )))) соответственно INSERT у него давал dead lock'и ))) Т.ч. как раз, как я и сказал. Ни одного. И это правильно! А подозревая, что у автора еще и auto commit стоял.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2018, 11:13 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39613049&tid=2122194]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
155ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 487ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...