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

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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