Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
932 / 365 / 43
Регистрация: 10.05.2021
Сообщений: 1,564
Записей в блоге: 10

Что произойдёт с данными в процессе транзакции, если сервер упал

28.02.2025, 09:29. Показов 1648. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую!

Сложно протестить, а по матчасти неоднозначно — поэтому прошу пояснения "на опыте".
-----
Случай 1:
1. Создание новой таблицы
2. Вставка строк из старой таблицы в новую
3. Удаление строк из старой таблицы
4. Вставка строк в старую таблицу

Случай 2:
То же самое, но внутри блока явной транзакции Begin Tran … Commit
-----
Представим, что сервер падает на любом шаге. Если важно, на каком, то пусть будет на шаге 3.

Вопрос:
Что произойдёт при возобновлении работы сервера?
То есть, какие изменения я увижу в БД в 1-ом и 2-ом случае?

Я так понимаю, что ответ как-то связан с журналом транзакций, но это не точно.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.02.2025, 09:29
Ответы с готовыми решениями:

Что произойдет , если внести магнит в катушку
1 вопрос Что произойдет , если .... 1) Если ввести магнит в катушку южным полюсом, то... 2) Если ввести в магнит катушку северным ...

Если из текста программы убрать цикл что произойдет?
Программа на замену последнего эл.массива на среднее арифметическое макс. и мин. элементов. #include<stdio.h> ...

Что произойдет, если дисковое пространство на хостинге переполнено
Дарова всем + с новым годом! Что произойдет, если дисковое про-во переполнено и я пытаюсь добавить инфу на сайт, например новость с фото...

10
Эксперт .NET
 Аватар для Usaga
14072 / 9289 / 1347
Регистрация: 21.01.2016
Сообщений: 34,869
28.02.2025, 09:33
Лучший ответ Сообщение было отмечено Jack Famous как решение

Решение

Jack Famous, без коммита транзакция будет откачена при запуске сервера. На то она и транзакция.
1
 Аватар для Аватар
5393 / 1465 / 513
Регистрация: 31.05.2012
Сообщений: 5,153
28.02.2025, 09:59
Лучший ответ Сообщение было отмечено Jack Famous как решение

Решение

в 1-ом случае транзакция не явно запускается и завершается для каждой команды редактирования. вот и считай что останется
1
932 / 365 / 43
Регистрация: 10.05.2021
Сообщений: 1,564
Записей в блоге: 10
28.02.2025, 10:34  [ТС]
Usaga, Аватар, спасибо большое!

Зафиксирую (поправьте, если что):
Либо всё внутри транзакции выполнено, либо ничего (с оговорками на условия, обработку ошибок и прочую логику).
Соответственно, без явной транзакции каждая инструкция выполняется в своей (неявной транзакции).
При Явном определении блока транзакции, либо всё в нём будет выполнено, либо ничего.
0
667 / 290 / 120
Регистрация: 12.04.2022
Сообщений: 998
28.02.2025, 13:30
Цитата Сообщение от Jack Famous Посмотреть сообщение
Соответственно, без явной транзакции каждая инструкция выполняется в своей (неявной транзакции).
Зависит от настройки

Если задано значение OFF, каждая из предыдущих инструкций T-SQL ограничена невидимыми инструкциями BEGIN TRANSACTION и COMMIT TRANSACTION. При значении OFF транзакция выполняется в режиме автофиксации. Если ваш код T-SQL выдает видимую инструкцию BEGIN TRANSACTION, транзакция выполняется в явном режиме.
Миниатюры
Что произойдёт с данными в процессе транзакции, если сервер упал  
1
 Аватар для Аватар
5393 / 1465 / 513
Регистрация: 31.05.2012
Сообщений: 5,153
28.02.2025, 23:42
off по умолчанию при установке, да еще и провайдеры обычно при соединении в off взводят флажок
1
932 / 365 / 43
Регистрация: 10.05.2021
Сообщений: 1,564
Записей в блоге: 10
03.03.2025, 08:58  [ТС]
Цитата Сообщение от PaulWist Посмотреть сообщение
Зависит от настройки
это да,но ...
Цитата Сообщение от PaulWist Посмотреть сообщение
Если задано значение OFF, каждая из предыдущих инструкций T-SQL ограничена невидимыми инструкциями BEGIN TRANSACTION и COMMIT TRANSACTION
это не так, насколько я понимаю. Плюс, у вас OFF в обоих случаях указан.
Бронтозавр хорошо объяснил про эту настройку, мне кажется — не ставить и убрать, если стоит.
0
 Аватар для Аватар
5393 / 1465 / 513
Регистрация: 31.05.2012
Сообщений: 5,153
03.03.2025, 09:06
Цитата Сообщение от Jack Famous Посмотреть сообщение
это не так, насколько я понимаю.
че не так? все так. только цитата выдернута из контекста, в котором ранее несколько sql-инструкций отображено, вот то и есть каждая из предыдущих инструкций
0
932 / 365 / 43
Регистрация: 10.05.2021
Сообщений: 1,564
Записей в блоге: 10
03.03.2025, 09:58  [ТС]
Цитата Сообщение от Аватар Посмотреть сообщение
че не так? все так. только цитата выдернута из контекста
про Off понятно (каждая команда в невидимом блоке транзакции).
Цитата Сообщение от Jack Famous Посмотреть сообщение
это не так, насколько я понимаю. Плюс, у вас OFF в обоих случаях указан.
вот тут был не прав — признаю.

Но вот с On из статьи ни хрена не понятно. Бронтозавр же предельно понятно всё объяснил.
Считаю, что про опцию нужно только запомнить — чтобы она была выключена.
0
3614 / 2135 / 756
Регистрация: 02.06.2013
Сообщений: 5,169
04.03.2025, 10:58
Какой-то умник в MS решил в клиентских библиотеках использовать set implicit_transactions on вместо явного begin tran
Другой умник оттуда же решил, что инструкция begin tran при implicit_transactions = on должна начинать неявную транзакцию
В результате можно нарваться
T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
if @@TRANCOUNT > 0
    rollback;
go
 
select @@trancount;
go
 
set implicit_transactions on;
go
 
begin tran;
select @@trancount;
rollback;
go
 
set implicit_transactions off;
go
1
932 / 365 / 43
Регистрация: 10.05.2021
Сообщений: 1,564
Записей в блоге: 10
04.03.2025, 11:03  [ТС]
invm, благодарю за инфу и тест!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.03.2025, 11:03
Помогаю со студенческими работами здесь

Что произойдет, если селектор не соответствует значению одной из констант?
1.Что произойдет, если селектор не соответствует значению одной из констант?

Что произойдёт, если такая стрела полетит в такой щит
Сформулировать ответы для следующих задач, исходя из теории аргументации: 1. Две конкурирующие фирмы. Первая производит стрелы, вторая...

Что произойдёт с витком, если его немного отклонить от первоначального положения
Магнитный момент кругового витка с током противоположно направлен силовым линиям однородного магнитного поля. Что произойдёт с витком, если...

Что произойдет, если вместо IP-адреса указан IP-адрес одного из интерфейсов шлюза
Что произойдет, если вместо логического IP-адреса получателя в заголовке IP-пакета указан IP-адрес одного из интерфейсов шлюза, который...

Что произойдет с параллельно движущимися спутниками, если от одного отправляется луч ко второму
Друзья, что произойдет с параллельно движущимися спутниками, если от одного отправляется луч ко второй: 1) Луч от него дойдет до второго...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru