расширение sybase

Нужно ли изменять процедуры хранения, если версия sybase расширена?


person geeta    schedule 27.10.2009    source источник
comment
зависит от того, что вы используете в своих SP ...   -  person KB22    schedule 27.10.2009
comment
Какая связь с Java?   -  person Pascal Thivent    schedule 27.10.2009
comment
это не связано с java, я хочу знать, есть ли разница между процедурами хранения, написанными для sybase версии 12.5 и 15.   -  person geeta    schedule 27.10.2009


Ответы (4)


Изменения, которые могут потребоваться, действительно зависят от версии. Существуют известные изменения, которые необходимы для перехода на ASE15 или более позднюю версию из более ранней версии из-за того, как оптимизатор был улучшен для внутреннего параллелизма.

Дополнительная информация об этих конкретных изменениях кода для обновлений ASE15 (или выше):

http://sapassets.edgesuite.net/sapcom/docs/2016/09/f69a1674-8a7c-0010-82c7-eda71af511fa.pdf

По моему опыту, переход на ASE15 или более позднюю версию с любой более ранней версии требует тщательной проверки изменений плана запроса, поскольку можно увидеть порядок соединения или другие изменения. Вы действительно должны получить время выполнения любого ключевого критического процесса в старой версии и сравнить его с более высокой версией.

Еще одна вещь, о которой вам нужно знать, это то, что зарезервированные слова могут меняться между версиями ASE, поэтому имя столбца, которое было разрешено в более ранней версии, теперь может быть запрещено. Вы можете ознакомиться с документацией по новой версии для руководства, и Sybase предоставляет зарезервированную процедуру проверки слов, чтобы проверить их перед обновлением.

person Rich Campbell    schedule 21.12.2016

В зависимости от того, как вы написали свои хранимые процедуры, они могут нуждаться в изменении, но я очень сомневаюсь в этом, если только вы не используете эзотерические вещи или не запрашиваете системные таблицы напрямую (они изменили кучу таблиц sys *, поэтому, если вы их используете, вы можете получить плохие данные).

Sybase обычно сохраняет обратную совместимость, и я не знаю о каких-либо серьезных устареваниях T-SQL в версии 15 (rowcnt() и некоторые флаги трассировки). ASE 15 имеет значительно улучшенный процессор запросов, но если он испортит ваши запросы, вы можете вернуться к режиму ASE 12.5.

В любом случае, как всегда, вы должны заранее протестировать свое обновление, но я сомневаюсь, что вы увидите много проблем.

person Matt Rogish    schedule 28.10.2009
comment
Я знаю, что в версии 12.5 вы можете создать поле, допускающее значение NULL, из поля, не допускающего значение NULL, в списке SELECT команды SELECT INTO с помощью функции ISNULL. В 15 все изменилось. Ссылка: groups.google.com/group /sybase.public.ase.upgrades+migration/ - person martin clayton; 31.10.2009

Это зависит от вашего кода. Большая часть кода должна работать правильно и не должно вызывать никаких проблем, поскольку Sybase не объявляет устаревшими команды T-SQL. Но при обновлении вы также должны обновить свой код, чтобы в полной мере воспользоваться преимуществами новой версии. В противном случае вы платите за новую версию, но продолжаете работать на старой версии.

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

person Gulli Meel    schedule 13.07.2012

Мы выполнили миграцию с 12.7 на 15.0, и нам пришлось изменить несколько хранимых процедур в отношении использования временных таблиц и т. д.,

person razorBlades    schedule 19.08.2013