2016-08-05 61 views
0

我正在爲增量加載創建一個包。Oracle中爲SSIS包準備的語句

源= Oracle DB

目標= MS SQL

同時拉動我使用下面的查詢從Oracle DB的數據,但它拋出一個錯誤。

select * from pcarscall1 WHERE [CALLKEY] > ? OR [ModDate] >= ? 

我知道這個代碼適用於SQL,我要的是對Oracle

等效查詢
+0

你能提供一些更多的信息。什麼是錯誤信息?你能直接針對Oracle運行查詢嗎?你在SSIS執行查詢任務中運行這個查詢嗎? 「CALLKEY」和「ModDate」的數據類型是什麼?參數數據類型是否匹配? –

+0

CALLKEY = varchar2(255 BYTES),MODDATE = date ---- 不,我在SSIS源代碼編輯器中運行此查詢。 錯誤:ORA-00936:缺少表達式 是參數數據類型匹配。我能夠加載,如果我指定確切的日期,但我想使用準備好的語句 –

回答

2

如果我沒記錯的話,周圍的列名方括號是一個MS SQL特定擴展名(只需要關鍵字列名稱或帶有空格的名稱)並且不被Oracle識別。試一試不用方括號:

select * from pcarscall1 WHERE CALLKEY > ? OR ModDate >= ? 
+0

獲取錯誤ORA-00904:「?」 :無效標識 –

+0

不知道發生了什麼,它開始再次工作。 謝謝 –