Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Откат транзакции выполненное приложением????  [new]
Rovshan_1975
Member

Откуда:
Сообщений: 26
Доброе время суток форумчане...
Столкнулся с проблемой...

Есть некое приложение. В нем ведется кассовые операции. Задача такова: При помощи Rollback сделать откат этой транзакции. Например:

select DATE_, TRCODE, FICHENO,CUSTTITLE, AMOUNT from dbo.KSLINES

Где Date_ - дата операции
Trcode - код кассовой операции
Ficheno - номер фактуры
Custtitle - Примечание
Amount - Сумма
11 сен 13, 12:51    [14825627]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Glory
Member

Откуда:
Сообщений: 104751
Завершенные транзакции нельзя отменить
Незавешенная транзакция отменяется командой Rollback
11 сен 13, 12:55    [14825656]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Rovshan_1975
Member

Откуда:
Сообщений: 26
Это точно?
11 сен 13, 12:56    [14825662]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Glory
Member

Откуда:
Сообщений: 104751
Rovshan_1975
Это точно?

Точность 146%

Сообщение было отредактировано: 11 сен 13, 12:58
11 сен 13, 12:58    [14825671]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
aleks2
Guest
1. Select - не откатывается, ибо ничего не меняет.

2. Шоб откатить INSERT/UPDATE/DELETE ваше творение должно сначала явно выдать команду (ну, включать IMPLISIT_TRANSACTION я не советую)
begin transaction


3. Наколбасить
INSERT/UPDATE/DELETE 


4. rollback transaction или разрыв соединения с сервером.
11 сен 13, 12:58    [14825672]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Rovshan_1975
Member

Откуда:
Сообщений: 26
А если она не завершена. Как это будет выглядеть?
11 сен 13, 12:59    [14825685]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
aleks2
Guest
Glory
Завершенные транзакции нельзя отменить
Незавешенная транзакция отменяется командой Rollback

Ну пачиму? Может у него Full? И бякап есть.

ЗЫ. Я понимаю, что это не тот случай... но.
11 сен 13, 13:00    [14825692]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Glory
Member

Откуда:
Сообщений: 104751
Rovshan_1975
А если она не завершена. Как это будет выглядеть?

Как команда rollback transaction
11 сен 13, 13:00    [14825693]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Glory
Member

Откуда:
Сообщений: 104751
aleks2
Ну пачиму? Может у него Full? И бякап есть.

Восстановление из бэкапа называется отменой определнных транзакций ?
11 сен 13, 13:01    [14825701]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Rovshan_1975
Member

Откуда:
Сообщений: 26
То есть как Я понял откат завершенной транзакции без Backup невозможно...
11 сен 13, 13:03    [14825715]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Glory
Member

Откуда:
Сообщений: 104751
Rovshan_1975
То есть как Я понял откат завершенной транзакции без Backup невозможно...

Бэкапы позволят восстановить _всю базу_ на какой-то момент времени.
А не отменить определенную транзакцию.
11 сен 13, 13:06    [14825739]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Rovshan_1975
Member

Откуда:
Сообщений: 26
Просто начальство поставило задачу такую. При помощи Rollback cделать откат не правильно совершенной кассовой операции..
11 сен 13, 13:10    [14825774]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Rovshan_1975
Member

Откуда:
Сообщений: 26
А как удалить эту транзакцию не зная на какие таблицы в базе она еще повлияла?
11 сен 13, 13:27    [14825900]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
aleks2
Guest
Rovshan_1975
Просто начальство поставило задачу такую. При помощи Rollback cделать откат не правильно совершенной кассовой операции..

Скажи ночальству, что оне дуре.

Если кассовую операцию надо отменять - тады в момент ее проведения надо сохранить где-то ВСЕ данные до изменения и ассоциировать эти данные с совершенным изменением.
Ручками.

ЗЫ. Хотя... ежели у вас
Где Date_ - дата операции
Trcode - код кассовой операции
Ficheno - номер фактуры
Custtitle - Примечание
Amount - Сумма
и есть фся операция, то ее можно тупо отменить уничтожив запись.
11 сен 13, 13:30    [14825918]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Rovshan_1975
Member

Откуда:
Сообщений: 26
в таблице есть еще пару столбцов которые я не указал. А если она не завершена то каким макаром прописать Rollback? Объясни пожалуйста.
11 сен 13, 13:34    [14825952]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
STsarionov
Member

Откуда:
Сообщений: 105
Она скорее всего у вас уже завершена, иначе бы 1) вы врят ли видели бы в системе эту операцию, которую хотите отменить 2) если бы была не завершена транзакция, то очень возможно блокировала бы другие процессы пытающиеся получить доступ к этой таблице.
Отменить уже завершенную транзакцию нельзя, возможно в вашей системе есть механизм отмены кассовой операции, но это вам думаю видней должно быть.
11 сен 13, 13:38    [14825997]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Rovshan_1975
Member

Откуда:
Сообщений: 26
То что я прописал ранее это просто имена столбцов в таблице для пояснения. Не факт что при помощью select-а я ее увижу.
11 сен 13, 13:41    [14826017]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
PaulYoung
Member

Откуда: Москва
Сообщений: 2566
Rovshan_1975,

вообще в бухгалтерии просто так никто ничего не удаляет. Ваш случай - это операция сторно.
11 сен 13, 13:41    [14826019]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
Rovshan_1975
в таблице есть еще пару столбцов которые я не указал. А если она не завершена то каким макаром прописать Rollback? Объясни пожалуйста.

вам скорее всего надо открывать хелп по
1. Разработка информационых систем
2. Архитектура клиент- сервер
3. Управление транзакциями
Сорри,но без базовых знаний..вам будет очнеь ложно понять ,как правильно организовать архиотектуру приложения аля Касса
11 сен 13, 13:45    [14826041]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Гость333
Member

Откуда:
Сообщений: 3683
Rovshan_1975
Просто начальство поставило задачу такую. При помощи Rollback cделать откат не правильно совершенной кассовой операции..

Прямо так и сказали — "использовать Rollback"? Или оставили выбор средств на ваше усмотрение?
11 сен 13, 14:04    [14826149]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Rovshan_1975
Member

Откуда:
Сообщений: 26
Сказали конкретно RollBack. Намучился с поиском.
11 сен 13, 14:05    [14826159]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Glory
Member

Откуда:
Сообщений: 104751
Rovshan_1975
Сказали конкретно RollBack.

rollback в переводе с английского означает всего то "откат"
11 сен 13, 14:13    [14826203]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Rovshan_1975
Member

Откуда:
Сообщений: 26
А как сделать RollBack для незавершенной транзакции в моем случае. Т.е. зная наименования столбцов. Как прописать код?
11 сен 13, 14:17    [14826236]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Glory
Member

Откуда:
Сообщений: 104751
Rovshan_1975
А как сделать RollBack для незавершенной транзакции в моем случае. Т.е. зная наименования столбцов. Как прописать код?

Код пишется руками.
Синтаксис берется из хелпа.
А знание того, что такое транзакция, придется получить через чтение учебников.
11 сен 13, 14:22    [14826274]     Ответить | Цитировать Сообщить модератору
 Re: Откат транзакции выполненное приложением????  [new]
Гость333
Member

Откуда:
Сообщений: 3683
Rovshan_1975
А как сделать RollBack для незавершенной транзакции в моем случае.

Как вы установили, что транзакция не завершена?
11 сен 13, 14:38    [14826379]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить