首先有一點背景。我的公司正在評估我們是否將我們的Informix數據庫遷移到Oracle 10g。我們有幾個ESQL/C程序。我已經運行了一些Oracle Migration工作臺,並且通過了一些測試。現在我已經意識到了一些事情。Informix to Oracle:處理獲取空值
首先,我們有沒有處理空值在所有動態SQL語句。從我讀過的內容來看,我必須手動修改查詢來使用nvl()函數或實現指示符變量。有人可以確認是否需要手動修改?我們必須對我們轉換的ESQL/C程序進行的手動更改數量最少。
第二,我們有幾個查詢其拉日期從各種表格等,並在Informix的日期將被視爲long類型時,#自12月31日兩天,1899年
在Pro * C,什麼格式日期被選爲?我知道這不是數字,因爲我嘗試在我的long變量中選擇日期字段,並得到Oracle錯誤,指出「期望的NUMBER,但有一個日期」。所以我假設我們不得不修改我們如何選擇日期字段 - 要麼以轉換的方式選擇日期字段,以便它變得很長(即自12/31/1899以來的天數),或者更改主機變量以匹配Oracle返回的內容(這是什麼,字符串?)。
+1我感到不得不考慮遷移你的痛苦 – 2009-05-05 14:19:12
運氣不好 - 我希望他們決定不爲你着想。動態SQL不處理Informix代碼中的問題是否是問題,還是您的意思是OCI(Pro * C)不能處理帶有主機變量的指示符變量? – 2009-05-05 18:27:42