2011-03-25 96 views
0

在我的SQL select部分中,我有這樣的列;使用C#在Oracle數據庫中添加SQL參數

NVL(RISK_SASI(A.TEKLIF_NO1, A.TEKLIF_NO2, C.URUN_SIRA_NO, C.SIRA_NO, :S_DATE),0) AS RISK 

我dinamicly一個TextBox這個S_DATE增值。

string txtBoxText1 = ((TextBox)Page.FindControl("TextBox1")).Text; 
if (txtBoxText1 != "") 
dt_stb = DateTime.Parse(txtBoxText1); 
myCommand.Parameters.AddWithValue(":S_TARIH_B", dt_stb); 

但它沒有爲我的SQL工作。

這是我的完整SQL;

SELECT A.HESAP_NO, A.TEKLIF_NO1 || '/' || A.TEKLIF_NO2 AS TEKLIF, A.MUS_K_ISIM AS MUSTERI, 
        B.MARKA, C.SASI_NO, C.SASI_DURUM, D.TAS_MAR, NVL(RISK_SASI(A.TEKLIF_NO1, A.TEKLIF_NO2, C.URUN_SIRA_NO, C.SIRA_NO, :S_TARIH_B),0) AS RISK, 
        NVL(MV_SASI(A.TEKLIF_NO1, A.TEKLIF_NO2, C.SIRA_NO, C.URUN_SIRA_NO, :S_TARIH_B),0) AS MV, 
        MV_K(A.TEKLIF_NO1,A.TEKLIF_NO2, :S_TARIH_B) AS KV 
        FROM S_TEKLIF A, S_URUN B, S_URUN_DETAY C, KOC_KTMAR_PR D 
        WHERE A.TEKLIF_NO1 || A.TEKLIF_NO2 = B.TEKLIF_NO1 || B.TEKLIF_NO2 
        AND A.TEKLIF_NO1 || A.TEKLIF_NO2 = C.TEKLIF_NO1 || C.TEKLIF_NO2 
        AND B.SIRA_NO = C.URUN_SIRA_NO 
        AND B.DISTRIBUTOR = D.DIST_KOD 
        AND B.MARKA = D.MARKA_KOD 
        AND B.URUN_KOD = D.TAS_KOD 

我該怎麼做?

最好的問候,Soner

+1

不知道ORACLE adonet接口是如何工作的,但是你可以嘗試在addparameter和查詢中使用@S_TARIH_B而不是:S_TARIH_B。 – stefan 2011-03-25 08:45:14

+1

請定義「沒有工作」 – 2011-03-25 08:45:56

+1

@Johann從他的追蹤查詢中很明顯。 – stefan 2011-03-25 08:51:38

回答