2009-10-27 22 views
1

我是否需要修改存儲過程如果Sybase版本增強SYBASE enhancment

+0

取決於你在SP中使用什麼...... – KB22 2009-10-27 11:13:22

+0

與Java的關係是什麼? – 2009-10-27 11:21:08

+0

它與java沒什麼關係,我想知道是否爲針對sybase版本12.5和15編寫的存儲過程存在差異。 – geeta 2009-10-27 12:47:11

回答

0

取決於你如何寫你的存儲特效,他們可能需要修改,但除非你使用深奧的東西或查詢我很懷疑係統表(他們改變了一堆sys *表,所以如果你使用它們,你可能會得到不好的數據)。

Sybase通常保持向後兼容性,我不知道15中有任何主要的T-SQL棄用(rowcnt()和一些traceflags)。 ASE 15具有大大增強的查詢處理器,但如果它將查詢搞砸了,則可以將其退出到ASE 12.5模式。

無論如何,和往常一樣,您應該事先測試升級,但我懷疑您會看到很多問題。

+0

我知道的一點是,在12.5中,您可以創建一個不可空的字段SELECT INTO的SELECT列表中的字段使用ISNULL函數。在15改變了。參考:http://groups.google.com/group/sybase.public.ase.upgrades+migration/browse_thread/thread/404dd9c2c397fff7# – 2009-10-31 01:26:53

0

這取決於你的代碼。大部分代碼應該正常工作,並且不應該有任何問題,因爲Sybase不會棄用T-SQL命令。但是當你升級時,你應該升級你的代碼以充分利用新版本。否則,您正在爲新版本付費,但仍舊使用舊版本。

我建議你檢查在proc中實現的邏輯是否可以在新版本中以更好的方式編寫,如果是,請繼續,並進行更改以使用新功能。

0

我們確實從12.7遷移到15.0,我們不得不幾個存儲過程WRT改爲臨時表等的使用,

0

可能需要的變化真的取決於版本。從較低版本遷移到ASE15或更高版本所需的已知更改,這是由於優化器針對內部並行性進行了改進的方式。

更多的信息在這裏對ASE15升級(或更高版本),這些具體的代碼更改:

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

我的經驗會從任何較低版本遷移到ASE15或更高需求的查詢計劃變化的廣泛檢查可能會看到加入訂單或其他更改。您應該真正獲得運行時間來執行舊版本的任何關鍵臨界進程,並與較高版本進行比較。

您需要了解的另一件事是保留字可能會在ASE版本之間發生變化,因此現在可能禁止在早期版本中允許的列名。您可以檢查新版本文檔以獲取指導,Sybase提供保留字檢查過程以在升級之前檢查這些文檔。