Поддержите связь оракула в C # - PullRequest
0 голосов
/ 21 сентября 2019

Соединение моего оракула закрывается перед выполнением процедуры в c #.Процедура Oracle занимает более часа, чтобы выполнить полностью.

Пожалуйста, предложите, как сохранить то же соединение, пока моя процедура не вернет значение.

Ответы [ 2 ]

0 голосов
/ 23 сентября 2019

Используя Devart dotConnect для Oracle, увеличьте значение OracleCommand.CommandTimeout или «Тайм-аут команды по умолчанию = ваше_значение»;в строке подключения.

0 голосов
/ 21 сентября 2019

Лучше, если вы сможете улучшить время выполнения хранимой процедуры.Но если это невозможно, вы можете установить время жизни соединения так, чтобы оно ожидало, и когда ответ вернется, вы можете закрыть соединение.

Время жизни соединения - максимальное время жизни (в секундах) соединения.

con.ConnectionString = 
      "User Id=scott;Password=tiger;Data Source=oracle;" + 
      "Min Pool Size=10;Connection Lifetime=120;Connection Timeout=60;" + 
      "Incr Pool Size=5; Decr Pool Size=2";

Более подробную информацию вы можете найти здесь.https://docs.oracle.com/cd/B28359_01/win.111/b28375/featConnecting.htm

...