Текущее время: Вт, июл 29 2025, 05:00

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Можно ли заключать программу в единственную транзакцию?
СообщениеДобавлено: Ср, мар 10 2010, 09:41 
Начинающий
Начинающий

Зарегистрирован:
Ср, фев 10 2010, 16:40
Сообщения: 13
Здравствуйте!

В принципе чувствую, что проблем возникнуть не должно, но хотелось бы подстраховаться - мало ли какие подводные камни могут всплыть.
Я работаю с MS SQL SERVER через native-SQL. Программа построена так:

Code:
  EXEC SQL.
    CONNECT TO 'CON_01'
  ENDEXEC.
  IF SY-SUBRC <> 0.
    write 'Не удалось подключиться к базе данных'.
    raise MSSQL_CON_ERROR.
  ENDIF.

//...
//Вызов форм, меняющих таблицы SQL SERVER
//...

  EXEC SQL.
    COMMIT
  ENDEXEC.


При этом между подключением к базе и COMMIT может выполняться большое количество изменений базы. Имеются ли какие-нибудь лимиты для транзакций, то есть возможно ли какое-нибудь переполнение в этой ситуации, или можно не беспокоится об этом и оформлять всю работу программы в одну транзакцию, которая подтверждается в самом конце?


Заранее спасибо.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Можно ли заключать программу в единственную транзакцию?
СообщениеДобавлено: Ср, мар 10 2010, 20:14 
Президент
Президент

Зарегистрирован:
Пт, апр 28 2006, 22:39
Сообщения: 2514
Откуда: North Taxolina, USA
Пол: Женский
Думаю в разделе Базис вам могут дать более точный ответ, но полагаю, что при таком раскладе можно нарваться на проблемы с памятью. Не знаю есть ли какие-то нюансы при пользовании native SQL, но обычно все изменения в базе хранятся в памяти до тех пор пока не будет сделан COMMIT. Естественно, чем больше изменений, тем больше памяти они занимают. Даже если это и не вызовет ошибки, такие вещи в принципе не очень хороши для производительности системы в целом.

_________________
"One of the symptoms of an approaching nervous breakdown is the belief that one's work is terribly important." Bertrand Russell


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Можно ли заключать программу в единственную транзакцию?
СообщениеДобавлено: Чт, мар 11 2010, 05:59 
Старший специалист
Старший специалист

Зарегистрирован:
Ср, окт 24 2007, 14:24
Сообщения: 272
Откуда: Екатеринбург
Пол: Мужской
Базис руками и ногами будет отбрыкиваться от непосредственных изменений прямо в БД. если необходимо что-то поменять, используйте ABAP, пусть он сам уже в native SQL ваш код переводит:)
Лимиты конечно имеются и на объем памяти, выделяемой под один процесс, и на время выполнения программы в диалоговом режиме


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Можно ли заключать программу в единственную транзакцию?
СообщениеДобавлено: Чт, мар 11 2010, 09:18 
Начинающий
Начинающий

Зарегистрирован:
Ср, фев 10 2010, 16:40
Сообщения: 13
Jelena, tr0ublemaker - cпасибо. Попробую еще спросить в конференции "базис".


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB